Публичное API позволяет внешним системам работать с данными пространства: проектами, задачами, полями, участниками, комментариями. Запросы выполняются от имени сервисного аккаунта.
Все методы с параметрами и ответами — в Swagger: https://api.taskitnow.ru/docs. Эта страница — как подключиться и с чего начать.
API использует OAuth 2.0 с типом Client Credentials. Client ID и Client Secret выдаются при создании сервисного аккаунта.
POST https://api.taskitnow.ru/api/v1/auth/oauth/token
Content-Type: application/json
{
"grant_type": "client_credentials",
"client_id": "ваш_client_id",
"client_secret": "ваш_client_secret"
}Ответ:
{
"access_token": "eyJhbGciOiJIUzI1NiIs...",
"token_type": "Bearer",
"expires_in": 86400
}expires_in — срок действия в секундах: токен действует 24 часа. Когда срок истечёт, запросите новый.
Передавайте токен в заголовке каждого запроса:
Authorization: Bearer ваш_access_tokenhttps://api.taskitnow.ruПуть начинается с имени сервиса: /tt-project, /tt-task, /tt-field, /tt-comment и другие; авторизация — /api/v1/auth. Точные пути и параметры — в Swagger.
Справочник всех методов с параметрами, телами запросов и ответов — https://api.taskitnow.ru/docs. Он собирается из кода и соответствует текущей версии API. Если taskITnow установлен у вас, Swagger открывается по адресу /docs на адресе API вашей установки.
Swagger показывает все методы API. Что доступно сервисному аккаунту, определяют его группы и роли в пространстве и проектах: без нужного права метод ответит 403.
Получить токен, список пространств и проекты пространства:
# 1. Токен
TOKEN=$(curl -s -X POST "https://api.taskitnow.ru/api/v1/auth/oauth/token" \
-H "Content-Type: application/json" \
-d '{"grant_type":"client_credentials","client_id":"ваш_client_id","client_secret":"ваш_client_secret"}' \
| jq -r .access_token)
# 2. Пространства сервисного аккаунта
curl -s "https://api.taskitnow.ru/tt-project/workspace" \
-H "Authorization: Bearer $TOKEN"
# 3. Проекты пространства
curl -s "https://api.taskitnow.ru/tt-project/project/all/id_пространства" \
-H "Authorization: Bearer $TOKEN"Ошибка приходит в JSON с полями statusCode и message.
Код | Описание |
|---|---|
400 | Некорректный запрос — тело или параметры не прошли проверку |
401 | Не авторизован — токен отсутствует, неверен или истёк |
403 | Доступ запрещён — у сервисного аккаунта нет нужного права |
404 | Не найдено — объект не существует или недоступен |
409 | Конфликт — состояние объекта не позволяет выполнить операцию |
500 | Внутренняя ошибка сервера |