welcome: please sign in
location: Diff for "u/Stiletto/BnW/API"
Differences between revisions 11 and 12
Revision 11 as of 2012-07-11 09:43:56
Size: 1082
Editor: Kagami
Comment: (м)
Revision 12 as of 2012-08-02 16:00:36
Size: 3168
Editor: anonymous
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"}

u/Stiletto/BnW/API (last edited 2014-06-05 11:52:47 by Кур_Кумит)