API задач

REST API задач

REST API задач предоставляет полный набор CRUD операций (создание, получение списков, просмотр, частичное обновление и удаление) по пути /v1/tasks. Для авторизации используется API-ключ пользователя (Bearer или X-API-Key) с проверкой принадлежности записей и скоупов (tasks:read, tasks:write или tasks:*).

Создание задач

POST /v1/tasks Создаёт одну задачу для владельца API-ключа.
curl -X POST https://u0life.com/v1/tasks \
  -H "Authorization: Bearer u0_live_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Позвонить клиенту",
    "description": "Создано из внешнего API",
    "date": "2026-09-18 10:00:00",
    "status": 0,
    "priority": 2,
    "client_id": 15,
    "project_id": 8,
    "category_id": 4,
    "time_planned": "01:30:00",
    "price_planned": 120
  }'

Получение списка задач

GET /v1/tasks Возвращает список задач с пагинацией и фильтрами по статусу, активности, проекту и клиенту.
curl -X GET "https://u0life.com/v1/tasks?limit=50&offset=0&status=0&active=1" \
  -H "Authorization: Bearer u0_live_your_key"

Просмотр задачи по ID

GET /v1/tasks/{id} Возвращает подробные данные задачи пользователя.
curl -X GET https://u0life.com/v1/tasks/123 \
  -H "Authorization: Bearer u0_live_your_key"

Обновление статуса и полей задачи

PATCH /v1/tasks/{id} Частичное обновление полей задачи. Установка статуса 2 завершает задачу и возвращает геймификацию (опыт, серию дней).
curl -X PATCH https://u0life.com/v1/tasks/123 \
  -H "Authorization: Bearer u0_live_your_key" \
  -H "Content-Type: application/json" \
  -d '{"status": 2}'

Удаление задачи

DELETE /v1/tasks/{id} Безвозвратно удаляет задачу владельца.
curl -X DELETE https://u0life.com/v1/tasks/123 \
  -H "Authorization: Bearer u0_live_your_key"

Поля

title обязательно Название задачи, до 191 символа.
description опционально Подробное описание задачи.
date опционально Плановая дата/время в серверном формате, например 2026-06-16 10:00:00.
status опционально Целочисленный статус от 0 до 3.
priority опционально Целочисленный приоритет от 0 до 3: 1 — критично и нельзя перенести, 2 — сделать на этой неделе, 3 — нужно сделать, но не критично, 0 — без приоритета.
client_id опционально ID клиента владельца API-ключа.
project_id опционально ID проекта владельца API-ключа.
category_id опционально ID категории владельца API-ключа.
time_planned опционально Плановое время в формате HH:MM:SS.
price_planned опционально Плановая сумма числом.