Документация API Tasko
Управляйте микрозаданиями заказчика из своей CRM, интернет-магазина или другого сервиса. Все операции выполняются от имени владельца API-ключа.
Доступ к API подключается после согласования интеграции с командой Tasko.
Быстрый старт
- Подайте заявку на подключение API через страницу контактов и дождитесь подтверждения.
- После подключения создайте ключ в профиле и сразу сохраните секрет.
- Передавайте ключ в заголовке каждого запроса.
- Используйте числовые ID, которые API возвращает в поле
id. - Для создания задания всегда формируйте уникальный
Idempotency-Key.
https://tasko.one/api/v1Авторизация
Храните ключ только на своём сервере. Не добавляйте его в URL, браузерный JavaScript, мобильное приложение или публичный репозиторий.
X-API-Key: YOUR_API_KEYТакже поддерживается Authorization: Bearer YOUR_API_KEY. Полный секрет показывается только один раз. Отключённый, удалённый или просроченный ключ не принимается.
Создание задания
curl -X POST 'https://tasko.one/api/v1/tasks/create' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Idempotency-Key: order-5931-attempt-1' \
-H 'Content-Type: application/json' \
-d '{
"title": "Проверить карточку организации",
"description": "Откройте карточку и выполните условия",
"secretDescription": "Проверьте номер телефона в разделе Контакты",
"link": "https://example.com/task",
"typeId": 2,
"siteTypeId": 4,
"characterCount": 150,
"language": "RU",
"intervalMinutes": 0,
"pricePerTask": 150,
"requiredCount": 10,
"requireScreenshot": true,
"requireMoreTime": false,
"premoderationText": false
}'| Поле | Тип | Обязательно | Правило |
|---|---|---|---|
| title | string | Да | Название, не более 200 символов |
| description | string | Да | Открытое описание задания |
| secretDescription | string | Нет | Инструкция после взятия работы, до 10 000 символов |
| link | string | Да | Ссылка для выполнения |
| typeId | number | Да | Публичный ID типа задания |
| siteTypeId | number | Да | Публичный ID площадки |
| pricePerTask | number | Да | Цена одной работы, не ниже минимальной |
| requiredCount | number | Да | Количество работ, не менее 1 |
| characterCount | number | Нет | 75, 150, 300, 500, 1000 или 2000 |
| language | string | Нет | RU или EN, по умолчанию RU |
| intervalMinutes | number | Нет | 0 — без паузы; иначе от 5 до 20 160 минут |
| requireScreenshot | boolean | Нет | Требовать итоговый скриншот |
| requireMoreTime | boolean | Нет | 12 суток вместо 3 на проверку |
| premoderationText | boolean | Нет | Проверить текст до публикации |
| scheduledStartAt | string | Нет | Будущая дата ISO 8601 |
| preparedComments | string[] | Нет | Готовые тексты для поддерживаемого типа задания |
| attachmentIds | number[] | Нет | До пяти ID ранее загруженных черновиков |
Tasko проверяет цену и баланс, затем резервирует pricePerTask × requiredCount. Повтор с тем же Idempotency-Key возвращает первое задание без повторного резервирования.
{
"success": true,
"data": {
"id": 5931,
"status": "ACTIVE",
"requiredCount": 10,
"reservedAmount": "1500.00"
}
}Управление заданием
/tasks/:idПолучить своё задание и отправленные работы/tasks/edit/:idИзменить параметры задания/tasks/:id/attachmentsЗаменить вложения задания/tasks/:id/pauseПриостановить выдачу новых работ/tasks/:id/resumeВозобновить приостановленное задание/tasks/:id/add-worksДобавить работы и зарезервировать средства/tasks/:id/stopОстановить набор и вернуть свободный резерв/tasks/:id/cancelОтменить заданиеВместо :id передавайте положительный числовой ID. Получить или изменить можно только задание владельца ключа. Отдельного метода списка заданий в версии v1 пока нет.
curl 'https://tasko.one/api/v1/tasks/5931' \
-H 'X-API-Key: YOUR_API_KEY'Готовые комментарии
Методы доступны только для типов заданий, поддерживающих готовые тексты. Изменять и удалять можно комментарии со статусом AVAILABLE.
/tasks/:id/prepared-commentsПолучить комментарии/tasks/:id/prepared-commentsДобавить комментарий/tasks/:taskId/prepared-comments/:commentIdИзменить невыданный комментарий/tasks/:taskId/prepared-comments/:commentIdУдалить невыданный комментарийcurl -X POST 'https://tasko.one/api/v1/tasks/5931/prepared-comments' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"content":"Готовый текст комментария"}'Проверка работ
Массив submissions в ответе задания содержит отправленные работы. Для проверки передайте публичный ID работы.
curl -X PATCH 'https://tasko.one/api/v1/submissions/1444/review' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"action":"APPROVED"}'APPROVED— одобрить работу.REJECTED— отклонить; требуетсяrejectionReason.REVISION_REQUESTED— вернуть; требуетсяrevisionComment.
Вложения
Загрузите до пяти файлов запросом POST /tasks/attachments/drafts, затем передайте полученные числовые ID в attachmentIds при создании задания.
curl -X POST 'https://tasko.one/api/v1/tasks/attachments/drafts' \
-H 'X-API-Key: YOUR_API_KEY' \
-F 'files=@brief.pdf' \
-F 'files=@example.png'Поддерживаются JPG, JPEG, PNG, WebP, PDF, DOC, DOCX, XLS, XLSX и TXT до 10 МБ.
Ошибки и ограничения
В v1 пока нет списка заданий и справочников типов заданий и площадок. Их числовые ID необходимо заранее согласовать с поддержкой Tasko.
При обращении в поддержку приложите HTTP-статус, путь и время ошибки. Сам API-ключ передавать поддержке нельзя.
