deutschlion / api

Публичная документация API TJournal

Home Page:https://tjournal.ru/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

tj's logo TJournal API documentation

Открытая неофициальная документация API TJournal

Внимание! API находится в режиме постоянной разработки, ответы от сервера могут меняться. (Но мы постараемся обо всех изменениях предупреждать :-)

Содержание

  1. Выполнение запросов
  2. Ошибки
  3. Методы 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 – ∞ текущий пользователь

🚀 Test endpoint


Записи пользователя

GET /2.3/account/posts

Параметр Описание Варианты По умолчанию
userId ID пользователя 1 – ∞ текущий пользователь
count количество 1 – 50 30
offset отступ от начала 0 – ∞ 0

🚀 Test endpoint

Комментарии пользователя

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 – указывать обязательно, ни на что не влияет. Остальное – см. Настройки аккаунта

Начать пробный период TJ+

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

🚀 Test endpoint


Конкретная запись

GET /2.3/club/item

Параметр Описание Варианты По умолчанию
entryId ID записи 1 – ∞

🚀 Test endpoint

Создать новую запись

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

🚀 Test endpoint

Твиты

Топ твитов

GET /2.3/tweets

Параметр Описание Варианты По умолчанию
count количество твитов 1 – 50 50
offset отступ от начала 0 – ∞ 0
listId категория 1,2,3 1
interval период времени 3hours, fresh, week, month fresh

🚀 Test endpoint

Черный список

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

🚀 Test endpoint


Список категорий

GET /2.3/news/lists

Параметр Описание Варианты По умолчанию
listId категория (если нужно получить конкретную) 0,1,2...
showSources показывать источники 0,1 1

🚀 Test endpoint

Настройки СМИ

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} можно найти в самом верху этой страницы

Авторизация с помощью QR-кода

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 адрес статьи

Определение статьи по URL

GET /2.3/content/reveal

Параметр Описание Варианты По умолчанию
url адрес статьи

🚀 Test endpoint

Подписка на push-уведомления

POST /2.3/push/subscribe

Параметр Описание Варианты По умолчанию
type Хз что (скорее всего ОС устройства iOS или Андроид) Известен пока только 2
token token для уведомлений
notifyAbout[] О чем уведомлять. Этот параметр можно указать несколько раз. См. Настройки аккаунта. 0 – скорее всего обо всем сразу.

Отписка от push-уведомлений

POST /2.3/push/unsubscribe

Параметр Описание Варианты По умолчанию
type Хз что (скорее всего ОС устройства iOS или Андроид) Известен пока только 2
token token для уведомлений

About

Публичная документация API TJournal

https://tjournal.ru/