TaskFlow API 1.4.2
REST API для небольшого сервиса управления задачами и проектами.
Документация описывает работу с пользователями, проектами и задачами.
Servers
https://api.example.com/v1
Описание
API использует JSON и стандартные HTTP-коды ответа. Для защищённых методов передавайте
JWT-токен в заголовке
Authorization: Bearer <token>.
Ограничение запросов — 120 запросов в минуту на один IP.
Auth Аутентификация пользователя
POST /auth/login Получить access token
Request body
{
"email": "user@example.com",
"password": "secret-password"
}
Responses
| Code | Description |
|---|---|
| 200 | Успешная авторизация |
| 401 | Неверный email или пароль |
{
"access_token": "eyJhbGciOiJIUzI1NiIs...",
"token_type": "bearer",
"expires_in": 3600
}
Projects Управление проектами
GET /projects Список проектов
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| limit | query | integer | Количество записей, по умолчанию 20 |
| offset | query | integer | Смещение выборки |
Response 200
{
"items": [
{
"id": "prj_8f39a",
"name": "Website redesign",
"status": "active",
"created_at": "2026-08-12T10:45:00Z"
}
],
"total": 1
}
POST /projects Создать проект
Request body required
{
"name": "Mobile application",
"description": "MVP development"
}
Response 201
{
"id": "prj_a12bc",
"name": "Mobile application",
"description": "MVP development",
"status": "active"
}
GET /projects/{project_id} Получить проект
Path parameters
| Name | Type | Description |
|---|---|---|
| project_id required | string | Идентификатор проекта |
Responses
| Code | Description |
|---|---|
| 200 | Проект найден |
| 404 | Проект не существует |
Tasks Задачи проекта
GET /tasks Список задач
Query parameters
| Name | Type | Description |
|---|---|---|
| project_id | string | Фильтр по проекту |
| status | string | todo, in_progress, done |
Response 200
{
"items": [
{
"id": "tsk_293fd",
"title": "Create landing page",
"status": "in_progress",
"priority": "high",
"project_id": "prj_8f39a"
}
]
}
POST /tasks Создать задачу
Request body
{
"project_id": "prj_8f39a",
"title": "Configure CI/CD",
"description": "Add build and deployment pipeline",
"priority": "medium"
}
Responses
| Code | Description |
|---|---|
| 201 | Задача создана |
| 422 | Ошибка валидации |
PATCH /tasks/{task_id} Обновить задачу
Request body
{
"status": "done",
"priority": "low"
}
Response 200
{
"id": "tsk_293fd",
"title": "Create landing page",
"status": "done",
"priority": "low"
}
DELETE /tasks/{task_id} Удалить задачу
Responses
| Code | Description |
|---|---|
| 204 | Задача удалена |
| 404 | Задача не найдена |
Schemas
Project object
| Property | Type | Example |
|---|---|---|
| id | string | prj_8f39a |
| name | string | Website redesign |
| status | string | active |
| created_at | datetime | 2026-08-12T10:45:00Z |
Task object
| Property | Type | Example |
|---|---|---|
| id | string | tsk_293fd |
| title | string | Create landing page |
| status | string | in_progress |
| priority | string | high |