API annimon.com 26.01.2016 / 20:32 | | aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| В этой теме будет описание API сайта и новости по поводу изменения того или иного метода. Обсудить API или его изменения можно в теме Вопросы и обсуждения. Обозначения/module/action - запрос отправляется на https://annimon.com/json/module/actionrequired - обязательный параметр, optional - необязательный параметр. REQUEST - можно использовать как GET-, так и POST-запрос. __________________
let live Изменено aNNiMON (31.03 / 22:51) (всего 2 раза) |
26.01.2016 / 20:32 | | aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| ★Форум/forum/get_sections - получить список разделовПараметров нет Пример https://annimon.com/json/forum/get_sections/forum/get_topics - получить список тем в разделеПараметры Параметры section : REQUEST - (number) - id раздела start : REQUEST - (number, 0) - начальная позиция limit : REQUEST - (number, 10) - количество выводимых тем, макс. 50
+ Response 200 OK (application/json) - object - total - (number) - количество тем в разделе - topics - (array) - topic - (number) - id темы - title - (string) - название темы - is_closed - (boolean) - закрыта ли тема? 0 - открыта, 1 - закрыта - time - (number) - время создания темы
+ Response 400 Bad Request (application/json) - object - error - (string) - описание ошибки
{"error":"section required"}
Пример Пример > https://annimon.com/json/forum/get_topics?section=27266&limit=1
{"total":88,"topics":[{"topic":70761,"title":"Android-программирование (1-ые посты)","is_closed":0,"time":1454781485}]}
/forum/get_posts - получить список постов темыПараметры Параметры Сообщения выводятся в обратном порядке - от новых к старым.
topic : REQUEST - (number) - id темы start : REQUEST - (number, 0) - начальная позиция limit : REQUEST - (number, 10) - количество выводимых сообщений, макс. 50 html : REQUEST - (boolean) - формат выводимых сообщений, 0 - в виде bb-code, 1 - в html
+ Response 200 OK (application/json) - object - total - (number) - количество постов в теме - posts - (array) - user_id - (number) - id автора поста - user - (string) - ник автора - text - (string) - текст сообщения - time - (number) - время написания поста
+ Response 400 Bad Request (application/json) - object - error - (string) - описание ошибки
{"error":"topic required"}
Пример Пример > https://annimon.com/json/forum/get_posts?topic=935&start=8&limit=2
{"total":14970,"posts":[{"user":"kalterfive","user_id":4468,"text":"Metallica - For Whom The Bell Tolls","time":1454836895},{"user":"aNNiMON","user_id":1,"text":"Widek - Orion","time":1454835253}]}
/forum/last_posts - получить список последних сообщений форумаПараметры Параметры limit : REQUEST - (number, 10) - количество выводимых сообщений, макс. 30 html : REQUEST - (boolean) - формат выводимых сообщений, 0 - в виде bb-code, 1 - в html
+ Response 200 OK (application/json) - array - topic - (number) - id темы - title - (string) - название темы - text - (string) - текст сообщения - user_id - (number) - id автора поста - message_id (number) - id поста - user - (string) - ник автора поста - time - (number) - время написания сообщения
Пример Пример > http://annimon.com/json/forum/last_posts?html=1&limit=1
# Raw
[{"topic":12979,"title":"Ваши личные рекорды","text":"В Battletoads набирал 999`999 очков. Но не проходил. <img alt=\":cry:\" src=\"http://annimon.com/files/smiles/18.gif\"/>","user_id":21,"user":"NaruTrey","time":1453823571}]
# Json
[
{
"topic": 12979,
"title": "Ваши личные рекорды",
"text": "В Battletoads набирал 999`999 очков. Но не проходил. <img alt=\":cry:\" src=\"https://annimon.com/files/smiles/18.gif\"/>",
"user_id": 21,
"user": "NaruTrey",
"time": 1453823571
}
]
__________________
let live Изменено aNNiMON (11.11 / 22:31) (всего 11 раз) |
26.01.2016 / 20:33 | | aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| ★Форум/forum/unread - получить список непрочитанных авторизованного пользователяПараметры Параметры token : POST - (string) - токен авторизации start : REQUEST - (number, 0) - начальная позиция limit : REQUEST - (number, 30) - количество выводимых сообщений, макс. 50 html : REQUEST - (boolean) - формат выводимых сообщений, 0 - в виде bb-code, 1 - в html
+ Response 200 OK (application/json) - object - total - (number) - количество непрочитанных всего - posts_per_page - (number) - количество постов на страницу - topics - (array) - id - (number) - id темы - title - (string) - название темы - user_id - (number) - id автора темы - author - (string) - ник автора темы - is_closed - (boolean) - закрыта ли тема? 0 - открыта, 1 - закрыта - time - (number) - время создания темы - posts_total - (number) - количество сообщений в теме - new_posts_total - (number) - количество новых сообщений в теме - subsection - (object) - информация о подразделе, в которой находится тема - id - (number) - id подраздела - refid - (number) - id раздела, в котором находится раздел - text - (string) - название подраздела - last_post - (object) - информация о последнем посте в теме - id - (number) - id сообщения - text - (string) - текст сообщения - user_id - (number) - id автора поста - author - (string) - ник автора поста - time - (number) - время написания сообщения
+ Response 400 Bad Request (application/json) - object - error - (string) - описание ошибки
{"error":"token required"}
+ Response 401 Unauthorized (application/json) - object - error - (string) - описание ошибки
{"error":"invalid token"}
/forum/mark_read - пометить тему прочитаннойПараметры Параметры token : POST - (string) - токен авторизации topic : POST - (number) - id темы
+ Response 200 OK если всё успешно
+ Response 400 Bad Request (application/json) - object - error - (string) - описание ошибки
{"error":"token required"}
{"error":"topic required"}
/forum/say - написать в темуПараметры Параметры token : POST - (string) - токен авторизации topic : POST - (number) - id темы text : POST - (string) - текст сообщения
+ Response 200 OK если всё успешно
+ Response 401 Unauthorized (application/json) - нет доступа в тему (бан или тема закрыта) + Response 403 Forbidden (application/json) - повторяющееся сообщение + Response 404 Not Found (application/json) - тема не найдена + Response 429 Too Many Requests (application/json) - антифлуд - object - error - (string) - описание ошибки
{"error":"No access to this topic"}
{"error":"No access to this topic"}
__________________
let live Изменено aNNiMON (15.03 / 18:51) (всего 7 раз) |
26.01.2016 / 22:20 | | aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| ★Пользователи/user/auth - получить токен авторизацииПараметры Параметры Токен действует на протяжении суток.
login : POST - (string) - логин пользователя md5_password : POST - (string) - md5-хэш пароля
+ Response 200 OK - object - user_id - (number) - id пользователя - auth_token - (string) - токен авторизации - auth_expires - (number) - время, после которого истекает срок действия токена
+ Response 400 Bad Request - object - error - (string) - описание ошибки
{"error":"login required"}
{"error":"md5_password required"}
+ Response 401 Unauthorized - object - error - (string) - описание ошибки
+ Response 404 Not Found - object - error - (string) - описание ошибки
{"error":"user does not exists"}
+ Response 429 Too Many Requests - object - error - (string) - описание ошибки
{"error":"reached auth attempts limit"}
Пример Пример curl --data "login=%D0%A2%D0%B5%D1%81%D1%82%D1%8A&md5_password=8ff11ba3228ab9011febd732a7cc5d78" http://annimon.com/json/user/auth
# Raw
{"user_id":"48","auth_token":"79da800ea9464bc53fe824477b160a21","auth_expires":1453921471}
★Web/web/auth - получить токен авторизации из браузераПараметры Параметры Токен действует на протяжении суток. Рекомендуется использовать этот метод, так как он безопаснее (не нужно вводить логин/пароль в приложениях).
+ Response 200 OK (text/html) - token (string) - токен авторизации
+ Response 401 Unauthorized (text/html) /web/counters - получить значения счётчиковПараметры Параметры mode : REQUEST - (string) - перечисление разделов в которых нужно получить значения. Указываются через запятую. Список разделов: articles, qa, diary, albums, code, writers, forum
+ Response 200 OK (text/json) - object (ключи формируются в зависимости от выбранных разделов)
Пример Пример https://annimon.com/json/web/counters?mode=diary,forum
{"diaries":0,"diaries_comments":4"forum":1}
__________________
let live Изменено aNNiMON (19.06 / 12:05) (всего 4 раза) |
27.01.2016 / 15:27 | | aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| ★Альбомы/album/list_photos - получить список фотографий в альбомеПараметры Параметры album_id : REQUEST - (number) - id альбома
+ Response 200 OK (application/json) - object - total - (number) - количество фотографий в альбоме - photos - (array) - id - (number) - id фотографии - name - (string) - название файла - thumb - (string) - ссылка на превью - photo - (string) - ссылка на полный размер фотографии - text - (string) - описание - time - (number) - время
+ Response 400 Bad Request (application/json) - object - error - (string) - описание ошибки
{"error":"album_id required"}
Пример Пример > http://annimon.com/json/album/list_photos?album_id=18887
# Raw
{"total":14,"photos":[{"id":40719,"name":"1ef00a66f199eb5b-248715.png","thumb":"http:\/\/annimon.com\/albums\/img.php?i=1ef00a66f199eb5b-248715_5664.png&w=200","photo":"http:\/\/annimon.com\/albums\/files\/1ef00a66f199eb5b-248715_5664.png","text":"http:\/\/deepart.io\/","time":1453811915}, ...]}
# Json
{"total":14,
"photos":[
{
"id": 40719,
"name": "1ef00a66f199eb5b-248715.png",
"thumb": "http://annimon.com/albums/img.php?i=1ef00a66f199eb5b-248715_5664.png&w=200",
"photo": "http://annimon.com/albums/files/1ef00a66f199eb5b-248715_5664.png",
"text": "http://deepart.io/",
"time": 1453811915
},
...
]}
__________________
let live Изменено aNNiMON (9.02 / 01:18) (всего 4 раза) |
27.01.2016 / 15:33 | | aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| ★Почта/mail/unread - получить список непрочитанных писемПараметры Параметры token : POST- (string) - токен авторизации html : REQUEST - (boolean) - формат выводимых сообщений, 0 - в виде bb-code, 1 - в html
+ Response 200 OK (application/json) - object - total - (number) - количество непрочитанных всего - messages (array) - id - (number) - id сообщения - from_id - (number) - id отправителя - from_login - (string) - логин отправителя - text - (string) - сообщение - time - (number) - время
+ Response 400 Bad Request (application/json) - object - error - (string) - описание ошибки
{"error":"token required"}
+ Response 401 Unauthorized (application/json) - object - error - (string) - описание ошибки
{"error":"invalid token"}
__________________
let live Изменено aNNiMON (10.02 / 00:39) (всего 4 раза) |
28.01.2016 / 15:07 | | aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| ★Блокнот/notebook/add - добавить заметкуПараметры Параметры token : POST - (string) - токен авторизации text : POST - (string) - текст заметки name : REQUEST - (string, "Без названия") - название заметки priority : REQUEST - (number, 2) - приоритет (1 - высокий, 2 - средний, 3 - низкий)
+ Response 200 OK (application/json) - object - id - (number) - id добавленной заметки
+ Response 429 Too Many Requests (application/json) + Response 400 Bad Request (application/json) + Response 403 Forbidden (application/json) - object - error - (string) - описание ошибки /notebook/delete - удалить заметкуПараметры Параметры token : POST - (string) - токен авторизации id : POST - (number) - id заметки
+ Response 200 OK (application/json) - object - note - (array) - id - (number) - id заметки - user_id - (number) - id автора заметки - name - (string) - название заметки - text - (string) - текст заметки - priority - (number) - приоритет - star - (boolean) - была ли заметка в избранном (0 - нет, 1 - да) - time - (number) - время создания заметки
+ Response 429 Too Many Requests (application/json) + Response 400 Bad Request (application/json) + Response 403 Forbidden (application/json) - object - error - (string) - описание ошибки /notebook/edit - изменить записьПараметры Параметры token : POST - (string) - токен авторизации id : POST - (number) - id заметки text : POST - (string) - текст заметки name : REQUEST - (string, "Без названия") - название заметки priority : REQUEST - (number, 2) - приоритет (1 - высокий, 2 - средний, 3 - низкий)
+ Response 200 OK (application/json) - object - affected - (number) - количество затронутых записей (1 - при успешном изменении)
+ Response 429 Too Many Requests (application/json) + Response 400 Bad Request (application/json) + Response 403 Forbidden (application/json) - object - error - (string) - описание ошибки /notebook/list - получить список заметокПараметры Параметры token : POST - (string) - токен авторизации favorites : REQUEST - (boolean) - выводить, 0 - все заметки, 1 - только избранные sort : REQUEST - (string) - сортировка, "date" - сначала новые, "name" - по имени А-Я, "priority" - сначала важные start : REQUEST - (number, 0) - начальная позиция limit : REQUEST - (number, 10) - количество выводимых заметок, макс. 30 cut : REQUEST - (number) - если значение больше нуля, то при выводе текст заметки будет ограничен длиной cut html : REQUEST - (boolean) - формат выводимого текста заметки, 0 - в виде bb-code, 1 - в html
+ Response 200 OK (application/json) - object - total - (number) - количество заметок всего - notes - (array) - id - (number) - id заметки - user_id - (number) - id автора заметки - name - (string) - название заметки - text - (string) - текст заметки - priority - (number) - приоритет - star - (boolean) - помещена ли заметка в избранное (0 - нет, 1 - да) - time - (number) - время создания заметки
+ Response 400 Bad Request (application/json) - object - error - (string) - описание ошибки /notebook/show - получить данные о заметкеПараметры Параметры token : POST - (string) - токен авторизации id : POST - (number) - id заметки html : REQUEST - (boolean) - формат выводимого текста заметки, 0 - в виде bb-code, 1 - в html
+ Response 200 OK (application/json) - object - note - (array) - id - (number) - id заметки - user_id - (number) - id автора заметки - name - (string) - название заметки - text - (string) - текст заметки - priority - (number) - приоритет - star - (boolean) - помещена ли заметка в избранное (0 - нет, 1 - да) - time - (number) - время создания заметки
+ Response 429 Too Many Requests (application/json) + Response 400 Bad Request (application/json) + Response 403 Forbidden (application/json) - object - error - (string) - описание ошибки /notebook/star - добавить заметку в избранноеПараметры Параметры token : POST - (string) - токен авторизации id : POST - (number) - id заметки
+ Response 200 OK (application/json) - object - affected - (number) - количество затронутых записей (1 - при успешном добавлении в избранное)
+ Response 429 Too Many Requests (application/json) + Response 400 Bad Request (application/json) + Response 403 Forbidden (application/json) - object - error - (string) - описание ошибки /notebook/unstar - убрать заметку из избранногоПараметры Параметры token : POST - (string) - токен авторизации id : POST - (number) - id заметки
+ Response 200 OK (application/json) - object - affected - (number) - количество затронутых записей (1 - при успешном удалении из избранного)
+ Response 429 Too Many Requests (application/json) + Response 400 Bad Request (application/json) + Response 403 Forbidden (application/json) - object - error - (string) - описание ошибки
__________________
let live Изменено aNNiMON (8.02 / 19:46) (всего 1 раз) |
8.02.2016 / 19:52 | | aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| ★Прочее/nowplay - передать информацию о проигрываемом треке для https://annimon.com/str/nowplay.phpПараметры Параметры login : POST - (string) - логин пользователя token : POST - (string) - токен, брать из https://annimon.com/str/nowplay.php artist : POST - (string) - исполнитель title : POST - (string) - название трека genre : POST - (string) - жанр
+ Response 200 OK
Пример Пример https://bitbucket.org/annimon/...w-default#main.rs-18 __________________
let live Изменено aNNiMON (19.06 / 12:09) (всего 4 раза) |
15.03.2018 / 18:53 | | aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| 2018-03-15 2018-03-15 - forum/mark_readed переименован в forum/mark_read - Добавлен метод forum/say2017-06-19 2017-06-19 - Добавлена информация об API Nowplay - Добавлена информация об API /web/counters2017-02-09 2017-02-09 - Добавлен API Блокнота - Изменён результат в forum/get_topics, forum/get_posts и albums/list_photos. Теперь там выводится общее количество данных.2016-01-28 2016-01-28 В forum/unread добавлен вывод количества постов на страницу
Добавлен forum/mark_readed.
- Улучшена типизация. Теперь, в большинстве случаев, числовые значения не оборачиваются в двойные кавычки.
// Было
[{"topic":"70761","title":"Android-программирование (1-ые посты)","is_closed":0,"time":"1453819254"}]
// Стало
[{"topic":70761,"title":"Android-программирование (1-ые посты)","is_closed":0,"time":1453968526}]
- Если обязательный параметр был передан не в POST, а в GET, то выведется соответствующая ошибка. Спасибо @Freddy за наводку. + Response 405 Method Not Allowed (application/json)
{"error":"expected POST, but found GET for %requiredParam%"}
- Добавлен вывод непрочитанных писем. Пост #451450.2016-01-26 2016-01-26 - Всем ответам добавлен заголовок application/json, так что в браузере теперь не будет html парситься. - Ответы теперь выдаются в utf-8 без экранирования юникода (было "Android-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435", стало "Android-программирование". - Добавлено получение токена авторизации из браузера. Пост #451414. __________________
let live |
Всего сообщений: 9 Фильтровать сообщения Поиск по теме
|