Как работать с API

Получить API-ключ

logo_img fs.lip

Обновлено: 15/11/2020 в 23:01

logo_img 1001 Tasks

Обновлено: 15/11/2020 в 23:00

logo_img Stats

Обновлено: 15/11/2020 в 23:04

logo_img PlayHelper

Обновлено: 15/11/2020 в 23:03

logo_img Truth or Dare

Обновлено: 15/11/2020 в 23:04

logo_img Math

Обновлено: 15/11/2020 в 23:02

logo_img Words

Обновлено: 15/11/2020 в 23:05

logo_img 4 Pics 1 Word

Обновлено: 15/11/2020 в 23:00

logo_img Millionaire

Обновлено: 15/11/2020 в 23:02

logo_img @TurniketSKUD_bot

Обновлено: 15/11/2020 в 23:03

logo_img @NearFood_bot

Обновлено: 15/11/2020 в 23:03

Статистика запросов:

(с начала месяца)

Успешных запросов23671
Заблокировано запросов367
Всего пользователей 753
Размер баз данных:
База данныхЗаписей
Millionaire
q = 1413
q = 2332
q = 3110
q = 450
На проверке0
Words
Города5432
Страны178
Английские слова7995
Русские слова19403
4 Pics 1 Word
Доступно24
На проверке0
Truth or Dare
Вопросы283
Действия78
На проверке0

Промо-страница

Промо-страница на данный момент недоступна.



Содержание

  1. Описание
  2. Особенности
  3. Скриншоты
  4. Использование сервиса
    1. Регистрация предприятия и управление базой
    2. Структура данных запроса
    3. Структура ответа

Описание

@Nearfood_bot - это Telegram-бот, предоставляющий интерактивное меню для заказа блюд различных предприятий, а также статистику1 заказов с использованием бота для менеджеров этих предприятий.


1. Статистика на данный момент недоступна.

Особенности

  • Бот абсолютно бесплатен!
  • Бот старается не захламлять диалог насколько это возможно - используется одно сообщение, которое обновляется.
  • В отличие от приложений, предлагающих заказ блюд, бот не занимает лишнего места - его не нужно скачивать, достаточно иметь установленный Telegram!
  • Также бот позволяет сделать одновременный заказ из нескольких предприятий!

Сервис находится на стадии тестирования. Возможны ошибки и непредвиденное поведение. Поэтому надеемся на обратную связь!


Скриншоты

img1 img2 img3 img4 img5 img6 img7 img8

Использование сервиса

Регистрация предприятия и управление базой

Для работы с сервисом отправьте необходимые данные на следующий адрес:

nearfood.php

Или отправьте боту готовые данные в виде документа ".json" (ссылка на пример - menu.json) или ".xlsx" (ссылка на пример - example.xlsx)2. В таком случае результат обработки данных будет отправлен ботом в диалог (см. Структура ответа).

2. Внесение изменений через файл ".xlsx" пока недоступно.


Структура данных запроса

Будьте внимательны: имеющиеся данные в базе будут удалены перед сохранением новых!

Параметр Описание
versionstring Устанавливается равным "2.0" (значение будет меняться). Означает ознакомление с данной документацией. Если значение будет неактуальным, значит формат данных устарел и необходимо ознакомиться с изменениями.
shopsarray of Shop Список, содержащий данные о предприятиях.

Shop

Указываемые в параметрах 5-значные значения в дальнейшем будут использоваться для доступа к редактированию данных, соответственно, каждое значение должно быть уникальным.

Параметр Описание
codestring Код предприятия - любой 5-значный символьный набор.
passstring Пароль предприятия - любой 5-значный символьный набор.
deleteboolean Укажите значение "true" для удаления предприятия.
closedboolean Закрыть ("true") / Открыть ("false") возможность заказа.
namestring Название предприятия. Не длиннее 20 символов.
typestring Тип предприятия. Например, "Кафе-ресторан".
descriptionstring Описание предприятия. Не длиннее 500 символов. Для вставки переноса строки используйте сочетание "\n".
order_timeobject OrderTime Время открытия и закрытия возможности совершения заказов.
sitestring Сайт предприятия.
phonearray of string Список номеров телефонов предприятия. Не более 3 номеров.
addressstring Адрес предприятия.
imagestring Ссылка на изображение.

Можно также указать ссылку на изображение, хранящееся на серверах Telegram. Для получения такой ссылки отправьте нужное изображение в диалог боту.

emailstring Электронная почта (не видна пользователям).
api_urlstring Адрес скрипта обработки заказов (не виден пользователям).

Необязательно, если в параметре "send_to" указано значение "email".

send_tostring Куда отправлять новые заказы.
При указании значения "email" заказ будет отправлен в отформатированном виде на почту, указанную в параметре "email".
При указании значения "url" заказ будет отправлен POST-запросом в формате JSON (content-type: application/json) на адрес, указанный в параметре "api_url".

Предпринимается только одна попытка отправки заказа. Даже в случае ошибки заказ считается принятым.

coordinatesobject Coordinates Координаты предприятия.
menuarray of Category Список, содержащий данные о категориях.

OrderTime
Параметр Описание
time_openstring Время, с которого открывается возможность заказа. Например, "08:00".
time_closestring Время, после которого закрывается возможность заказа. Например, "23:00".

Coordinates
Параметр Описание
latitudefloat Широта с точностью 8 знаков. Например, "55.75222123".
longitudefloat Долгота с точностью 8 знаков. Например, "37.61556132".

Category
Параметр Описание
codestring Код категории. Любой 5-значный символьный набор.
category_namestring Название категории. Не длиннее 15 символов. Например, "Десерты".
itemsarray of Food Список, содержащий данные о блюдах.

Food
Параметр Описание
codestring Код блюда. Любой 5-значный символьный набор.
deleteboolean Укажите значение "true" для удаления блюда с кодом, указанным в параметре "code".
food_namestring Название блюда. Не длиннее 15 символов.
imagestring Ссылка на изображение блюда.

Можно также указать ссылку на изображение, хранящееся на серверах Telegram. Для получения такой ссылки отправьте нужное изображение в диалог боту.

descriptionstring Описание блюда. Не длиннее 100 символов.
pricefloat Стоимость блюда.
ingredientsarray of IngredientsGroup Список, содержащий данные об ингредиентах, которые можно добавить в блюдо.

IngredientsGroup
Параметр Описание
group_namestring Название для группы ингредиентов. Например, "Начинка". Не длиннее 20 символов.
deleteboolean Укажите значение "true" для удаления ингредиентов, объединённых группой, указанной в параметре "group_name".
is_radioboolean Укажите значение "true", если можно выбрать только один ингредиент.
itemsarray of Ingredient Список, содержащий данные об ингредиентах, объединённых группой, указанной в параметре "group_name".

Ingredient
Параметр Описание
codestring Код ингредиента. Любой 5-значный символьный набор.
deleteboolean Укажите значение "true" для удаления ингредиента с кодом, указанным в параметре "code".
namestring Название ингредиента. Не длиннее 20 символов.
costfloat Величина, на которую увеличится стоимость блюда при использовании ингредиента.

Структура ответа

Ответ будет представлен в формате JSON. Если "ok" не равно "true", значит допущена ошибка в данных, при этом никакие изменения в базу не вносятся (даже если предприятий несколько).

Поле Описание
okboolean "true" - изменения успешно загружены, "false" - произошла ошибка.
shop_closedboolean (Сообщение о текущем статусе) "true" - предприятие закрыто для заказов, "false" - открыто.
error_messagestring Описание ошибки, если значение в поле "ok" не равно "true".
last_dataarray of LastData Список, включающий в себя до 3-х последних обработанных значений (для отладки), если значение в поле "ok" не равно "true".

LastData
Поле Описание
keystring Строковое представление ключа.
valuestring Строковое представление значения для ключа "key".