FocusWork API Reference
REST API приложения FocusWork. Базовый URL: https://api.focuswork.pro/v1
Аутентификация
Все API-запросы требуют OAuth2 bearer-токен в заголовке Authorization:
Authorization: Bearer fw_token_8jK3xZpQrLmN...
Получить токен через POST /auth/login. Токены живут 60 минут; используйте refresh endpoint для ротации.
Ошибки
Ошибки следуют стандартным HTTP кодам статуса с JSON-телом:
{"error": "invalid_token", "message": "Токен истёк или отозван", "code": "AUTH_001"}
Rate-лимиты
Free тариф: 60 запросов/мин. Pro: 1000 запросов/мин. Team: 5000 запросов/мин.
Логин
POST
/auth/login
Обменять email + пароль на access-токен.
Запрос
{
"email": "you@company.ru",
"password": "your_password",
"device_id": "ios_8f3kJ2"
}
Ответ
{
"access_token": "fw_token_8jK3xZpQrLmN...",
"refresh_token": "fw_refresh_3kF7nYx...",
"expires_in": 3600,
"user": {
"id": "usr_8jK3xZ",
"email": "you@company.ru",
"team_id": "team_aB7cQ"
}
}
Создать задачу
POST
/tasks
Создать новую задачу в текущем workspace.
Тело запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
title | string | да | Название задачи, макс 200 символов |
notes | string | нет | Markdown-описание |
due_at | ISO 8601 | нет | Дедлайн |
priority | 1-4 | нет | 1 = низкий, 4 = критичный |
assignee_id | string | нет | ID члена команды |
project_id | string | нет | Проект |
Ответ
{
"id": "tsk_9Lm2pQ",
"title": "Запустить CDN-интеграцию",
"created_at": "2025-05-21T03:42:18Z",
"status": "open"
}
Sync Push
POST
/sync/push
Отправить локальные изменения на сервер. Батчированные мутации от offline-клиентов.
Запрос
{
"client_id": "ios_8f3kJ2",
"cursor": "v_2026_05_21_103428",
"mutations": [
{"op": "create", "type": "task", "data": {"title": "..."}},
{"op": "update", "type": "task", "id": "tsk_9Lm2pQ", "patch": {"status": "done"}}
]
}
Ответ
{
"applied": 2,
"conflicts": [],
"new_cursor": "v_2026_05_21_103450"
}
Загрузка вложения
POST
/attachments
Загрузить файл-вложение для задачи. Макс 25 МБ.
Заголовки
Content-Type: multipart/form-data Authorization: Bearer fw_token_...
Ответ
{
"id": "att_kJ8mNq",
"url": "https://cdn.focuswork.pro/att/att_kJ8mNq.pdf",
"size_bytes": 248491,
"mime_type": "application/pdf"
}
Последнее обновление: 21 мая 2026 · Версия API: v1.4.2