Открытая неофициальная документация API TJournal (на сегодня неактуальна, пользуйтесь http://shir-man.com/static/tjapi/)
Внимание! API находится в режиме постоянной разработки, ответы от сервера могут меняться. (Но мы постараемся обо всех изменениях предупреждать :-)
- Выполнение запросов
- Ошибки
- Методы API
- Пользователь
- Клуб
- Твиты
- Новости
- Авторизация
- Прочее
Для обращения к API необходимо сделать GET- или POST-запрос по адресу https://api.tjournal.ru/{v}/{section}/{action}, где:
- {v} — текущая версия API (на данный момент —
2.3); - {section} и {action} — метод API.
Ответ вернётся в JSON.
Для некоторых запросов (преимущественно для авторизации) требуется соль {salt}
- {salt} — на текущий момент
hDv#L9Om>iHfAdT5^6uIy?&
API может возвращать различные ошибки в следующем формате:
{
"error": {
"code": 404,
"message": "Method Not Found"
}
}GET /2.3/account/info
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| userId | ID пользователя | 1 – ∞ | текущий пользователь |
GET /2.3/account/posts
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| userId | ID пользователя | 1 – ∞ | текущий пользователь |
| count | количество | 1 – 50 | 30 |
| offset | отступ от начала | 0 – ∞ | 0 |
GET /2.3/account/comments
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| userId | ID пользователя | 1 – ∞ | текущий пользователь |
| count | количество | 1 – 50 | 30 |
| offset | отступ от начала | 0 – ∞ | 0 |
GET /2.3/account/notifications
Для выполнения этого запроса необходима авторизация. Параметров нет.
GET /2.3/favorites
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| objectType | Тип избранного | 1 – статьи, 2 – твиты, 3 – новости, 4 – комментарии, 5 – записи | |
| count | количество | 1 – 50 | 30 |
| offset | отступ от начала | 0 – ∞ | 0 |
POST /2.3/favorites/new
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| objectId | ID объекта | 0 – ∞ | |
| objectType | Тип избранного | 1 – статьи, 2 – твиты, 3 – новости, 4 – комментарии, 5 – записи |
POST /2.3/favorites/remove
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| objectId | ID объекта | 0 – ∞ | |
| objectType | Тип избранного | 1 – статьи, 2 – твиты, 3 – новости, 4 – комментарии, 5 – записи |
GET /2.3/account/settings
Для выполнения этого запроса необходима авторизация.
Параметров нет. Просто выводит список доступных настроек.
POST /2.3/account/settings
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| notifications[email][] | О чем уведомлять по email. Этот параметр можно указать несколько раз. | 0 – указывать обязательно, ни на что не влияет. Остальное – см. Настройки аккаунта |
POST /2.3/purchases/trial
Для выполнения этого запроса необходима авторизация.
Параметров нет
GET /2.3/club
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| count | количество | 1 – 50 | 30 |
| offset | отступ от начала | 0 – ∞ | 0 |
| type | тип записи | 0 (все), 1 (новости), 2 (оффтоп), 3 (видео), 4 (статьи) | 0 |
| sortMode | вид сортировки | mainpage, recent, week, unadmitted, editorial | mainpage |
GET /2.3/club/item
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| entryId | ID записи | 1 – ∞ |
POST /2.3/club/new
Для выполнения этого запроса необходима авторизация.
Необходимо отправлять с заголовком
content-type: multipart/form-data
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| title | Заголовок | ||
| url | Ссылка на новость | ||
| content | Тело статьи | ||
file_attaches[{i}] |
Прикрепленная картинка, где {i} – порядковый номер вложения |
Картинка jpg, gif, png | |
files[{source}][{i}] |
Используется для прикрепления файлов по ссылкам. {i} – порядковый номер вложения (с учетом вложений из предыдущего параметра). Из доступных {source} нам пока известен только youtube |
Ссылка на видео (точно) или картинку (возможно) |
POST /2.3/club/like
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| entryId | ID записи | 1 – ∞ | |
| sign | Оценка | 1 или -1 | |
| hash | Хэш для записи. Берется из информации о записи (см. Конкретная запись) |
GET /2.3/comments
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| section | Клуб или редакция | club, paper | paper |
| paperId | ID записи | 1 – ∞ |
GET /2.3/comments/likes
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| commentId | ID комментария | 1 – ∞ |
POST /2.3/comments/new
Для выполнения этого запроса необходима авторизация.
Необходимо отправлять с заголовком
content-type: multipart/form-data
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| message | Текст комментария | ||
| paperId | ID записи | 1 – ∞ | |
| inReplyToCommentId | ID комментария, ответом на который является этот | 1 – ∞ | |
file_attaches[{i}] |
Прикрепленная картинка, где {i} – порядковый номер вложения |
Картинка jpg, gif, png | |
files[{source}][{i}] |
Используется для прикрепления файлов по ссылкам. {i} – порядковый номер вложения (с учетом вложений из предыдущего параметра). Из доступных {source} нам пока известен только youtube |
Ссылка на видео (точно) или картинку (возможно) |
POST /2.3/comments/like
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| entryId | ID записи | 1 – ∞ | |
| sign | Оценка | 1 или -1 | |
| hash | Хэш для комментария. Берется из списка комментариев (см. Комментарии) |
GET /2.3/search
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| q | Поисковая строка (может быть хэштегом) | ||
| count | количество | 1 – 50 | 30 |
| offset | отступ от начала | 0 – ∞ | 0 |
| type | тип поиска | 1 (клуб), других вариантов пока нет | 1 |
GET /2.3/tweets
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| count | количество твитов | 1 – 50 | 50 |
| offset | отступ от начала | 0 – ∞ | 0 |
| listId | категория | 1,2,3 | 1 |
| interval | период времени | 3hours, fresh, week, month | fresh |
GET /2.3/tweets/blacklist
Для выполнения этого запроса необходима авторизация. Параметров нет.
POST /2.3/tweets/blacklistAdd
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| tweopleId | ID пользователя твиттера | ||
| hash | Хэш для пользователя. Берется из списка твитов (см. Топ твитов) |
POST /2.3/tweets/blacklistRemove
Для выполнения этого запроса необходима авторизация.
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| tweopleId | ID пользователя твиттера | ||
| hash | Хэш для пользователя. Берется из черного списка (см. Черный список) |
GET /2.3/news
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| count | количество новостей | 1 – 50 | 50 |
| listId | категория | 1,2... | |
| interval | период времени | fresh, popular | popular |
GET /2.3/news/lists
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| listId | категория (если нужно получить конкретную) | 0,1,2... | |
| showSources | показывать источники | 0,1 | 1 |
POST /2.3/news/settings
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| settings[mailList] | Хз что это | Кроме 0 не встречал | |
| settings[lists][] | Категории для подписки. Этот параметр можно указать несколько раз в порядке предпочтения категорий. | 0,1,2... |
POST /2.3/news/listExcludes
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| listId | Категория | 0,1,2... | |
| sources[] | ID СМИ. Этот параметр можно указать несколько раз. | 0,1,2... |
POST /2.3/account/authorize
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| socialId | ID пользователя соцсети | ||
| socialType | Соцсеть для авторизации | 1 – Твиттер. Другие надо выяснить | |
| token | Токен из соцсети для авторизации | ||
| hash | Хэш для идентификации приложения. Здесь Вычисляется по формуле md5(socialId+socialType+token+{salt}) Соль {salt} можно найти в самом верху этой страницы |
POST /2.3/account/verifyQR
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| token | Результат распознания QR-кода без v2| |
Например, если код содержит строку v2|59bcc3ad6775562f845953cf01624225, то token равен 59bcc3ad6775562f845953cf01624225 |
|
| hash | Хэш для идентификации приложения. Здесь Вычисляется по формуле md5(token+{salt}) Соль {salt} можно найти в самом верху этой страницы |
Чтобы использовать приватные методы, запрос необходимо отправлять со следующими заголовками:
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| Accept | application/json | ||
| User-agent | Информация об устройстве пользователя | Пример: {"device":{"id":"2346464h7d69f7e6","app_version":"3.5.3","os":"Android","app_build":"144","locale":"ru","os_version":"4.4.2","name":"PadFone Infinity"}} | |
| X-Auth-Session | Методы авторизации (с помощью QR-кода или же соцсети) возвращают параметр sessionId и куку csid. Значение этих параметров – это ключ сессии, который и необходимо тут указать |
POST /2.3/misprints/new
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| text | опечатка | ||
| url | адрес статьи |
GET /2.3/content/reveal
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| url | адрес статьи |
POST /2.3/push/subscribe
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| type | Хз что (скорее всего ОС устройства iOS или Андроид) | Известен пока только 2 | |
| token | token для уведомлений | ||
| notifyAbout[] | О чем уведомлять. Этот параметр можно указать несколько раз. | См. Настройки аккаунта. 0 – скорее всего обо всем сразу. |
POST /2.3/push/unsubscribe
| Параметр | Описание | Варианты | По умолчанию |
|---|---|---|---|
| type | Хз что (скорее всего ОС устройства iOS или Андроид) | Известен пока только 2 | |
| token | token для уведомлений |
