Size: 1082
Comment: (м)
|
Size: 3168
Comment: более подробное описание
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
Функции HTTP-API [[../|BnW]] дублируют команды [[../Интерфейс_redeye|красноглазого интерфейса]] (используются только длинные версии команд и аргументов). Взаимодействие с сервером происходит с помощью GET или POST запросов (на выбор пользователя), ответы выдаются в виде JSON. | Функции HTTP-API [[../|BnW]] дублируют команды [[../Интерфейс_redeye|красноглазого интерфейса]] (используются только длинные версии команд и аргументов). Взаимодействие с сервером происходит с помощью GET или POST запросов (на выбор пользователя), ответы выдаются в виде [[https://ru.wikipedia.org/wiki/JSON|JSON]]. |
Line 4: | Line 4: |
Если функция требует авторизации, необходимо передать параметр {{{login}}} равный loginkey пользователя, который можно получить, отправив боту команду {{{login}}}. | В зависимости от успешности выполнения запроса, параметр {{{ok}}} в ответе принимает значения {{{true}}} или {{{false}}}. Если запрос неуспешен, то параметр {{{desc}}} будет содержать причину ошибки. Если функция требует авторизации, необходимо передать параметр {{{login}}} равный loginkey пользователя, который можно получить, отправив боту команду {{{login}}}. |
Line 6: | Line 6: |
||<:#E0E0FF> Команда||<:#E0E0FF> URL запроса|| ||Список функций||{{{https://bnw.im/api/}}}|| ||Список постов клуба||{{{https://bnw.im/api/show?club=bnw}}}|| ||Создание поста||{{{https://bnw.im/api/post?text=Я+ебу+гусей&login=1234567890abcdef}}}|| |
==== Примеры запросов ==== ||<:#E0E0FF> Команда||<:#E0E0FF> URL запроса||<:#E0E0FF> Ответ|| ||Список команд||{{{https://bnw.im/api/}}}||~-{"commands": ["feed", "comment", "show", "clubs", "tags", "recommend", "subscriptions/del", "today", "pm", "stat", "subscriptions", "update", "blacklist", "passlogin", "interface", "post", "vcard", "on", "search", "subscriptions/add", "off", "register", "userlist", "delete"], "ok": true}-~|| ||Создание поста||{{{https://bnw.im/api/post?text=Я+ебу+гусей&login=1234567890abcdef}}}||~-{"ok": true, "id": "0XYNTA", "desc": "Message #0XYNTA has been delivered to 0 users.-~ {{{https://bnw.im/p/0XYNTA"} }}}|| ||Показать пост||{{{https://bnw.im/api/show?message=ZG24XK}}}||~-{"messages": [{"tags": ["simplified"], "text": "Все команды жуйкоинтерфейса теперь нечувствительны к регистру", "anoncomments": "", "date": 1342214311.7753761, "clubs": ["@", "bnw"], "replycount": 4, "user": "stiletto", "anonymous": "", "recommendations": [], "indexed": true, "id": "ZG24XK"}], "cache_public": true, "cache": 5, "ok": true, "format": "messages"}-~|| ||Подписка на пост||{{{https://bnw.im/api/subscriptions/add?message=ZG24XK&login=1234567890abcdef}}}||~-{"ok": true, "desc": "Subscribed (4 replies)."}-~|| ==== Примеры ошибочных запросов ==== ||<:#E0E0FF> Команда||<:#E0E0FF> URL запроса||<:#E0E0FF> Ответ|| ||Несуществующая команда||{{{https://bnw.im/api/kkk}}}||~-{"ok": false, "desc": "unknown command"}-~|| ||Попытка рекомендации несуществующий поста||{{{https://bnw.im/api/recommend?message=ABC&login=1234567890abcdef}}}||~-{"ok": false, "desc": "No such message."}-~|| ||Не указан/неправильный loginkey||{{{https://bnw.im/api/pm?user=stiletto&text=oh+hai}}}||~-{"ok": false, "desc": "Only for registered users"}-~|| |
API
Функции HTTP-API BnW дублируют команды красноглазого интерфейса (используются только длинные версии команд и аргументов). Взаимодействие с сервером происходит с помощью GET или POST запросов (на выбор пользователя), ответы выдаются в виде JSON.
В зависимости от успешности выполнения запроса, параметр ok в ответе принимает значения true или false. Если запрос неуспешен, то параметр desc будет содержать причину ошибки. Если функция требует авторизации, необходимо передать параметр login равный loginkey пользователя, который можно получить, отправив боту команду login.
Примеры запросов
Команда |
URL запроса |
Ответ |
Список команд |
https://bnw.im/api/ |
{"commands": ["feed", "comment", "show", "clubs", "tags", "recommend", "subscriptions/del", "today", "pm", "stat", "subscriptions", "update", "blacklist", "passlogin", "interface", "post", "vcard", "on", "search", "subscriptions/add", "off", "register", "userlist", "delete"], "ok": true} |
Создание поста |
https://bnw.im/api/post?text=Я+ебу+гусей&login=1234567890abcdef |
{"ok": true, "id": "0XYNTA", "desc": "Message #0XYNTA has been delivered to 0 users. https://bnw.im/p/0XYNTA"} |
Показать пост |
https://bnw.im/api/show?message=ZG24XK |
{"messages": [{"tags": ["simplified"], "text": "Все команды жуйкоинтерфейса теперь нечувствительны к регистру", "anoncomments": "", "date": 1342214311.7753761, "clubs": ["@", "bnw"], "replycount": 4, "user": "stiletto", "anonymous": "", "recommendations": [], "indexed": true, "id": "ZG24XK"}], "cache_public": true, "cache": 5, "ok": true, "format": "messages"} |
Подписка на пост |
https://bnw.im/api/subscriptions/add?message=ZG24XK&login=1234567890abcdef |
{"ok": true, "desc": "Subscribed (4 replies)."} |
Примеры ошибочных запросов
Команда |
URL запроса |
Ответ |
Несуществующая команда |
https://bnw.im/api/kkk |
{"ok": false, "desc": "unknown command"} |
Попытка рекомендации несуществующий поста |
https://bnw.im/api/recommend?message=ABC&login=1234567890abcdef |
{"ok": false, "desc": "No such message."} |
Не указан/неправильный loginkey |
https://bnw.im/api/pm?user=stiletto&text=oh+hai |
{"ok": false, "desc": "Only for registered users"} |