welcome: please sign in
location: Diff for "u/Stiletto/BnW/API"
Differences between revisions 4 and 14 (spanning 10 versions)
Revision 4 as of 2012-07-10 21:01:25
Size: 1087
Editor: Kagami
Comment:
Revision 14 as of 2014-06-05 11:52:47
Size: 3161
Comment: Stop shitediting ffs
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
Функции HTTP-API [[../start|BnW]] дублируют команды [[../Интерфейсы/redeye|redeye-интерфейса]] (используются только длинные версии команд и аргументов). Взаимодействие с серверов происходит с помощью GET или POST запросов (на выбор пользователя), ответы выдаются в виде JSON. Функции HTTP-API [[../|BnW]] дублируют команды [[../Интерфейс_redeye|красноглазого интерфейса]] (используются только длинные версии команд и аргументов). Взаимодействие с сервером происходит с помощью GET или POST запросов (на выбор пользователя), ответы выдаются в виде [[https://ru.wikipedia.org/wiki/JSON|JSON]].
Line 4: Line 4:
Если функция требует авторизации, необходимо передать параметр {{{login}}} равный loginkey пользователя. В зависимости от успешности выполнения запроса, параметр {{{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)."}-~||
Line 11: Line 13:
||<#FF0000> TODO /!\ Слишком мало информации об API, кто допишет?|| ==== Примеры ошибочных запросов ====
||<:#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 Кур_Кумит)