Todos REST API — это простое REST API для создания, получения, изменения и удаления задач через готовую и предсказуемую структуру данных.
Его удобно использовать для первых todo-приложений, учебных проектов, тестовых заданий и практики с интерфейсами, где данные должны соответствовать фиксированной схеме.
API хорошо подходит для случаев, когда хочется потренироваться работать не с произвольным JSON, а с понятной структурой задачи: названием, статусом и описанием.
Формат каждого ответа соответствует формату JSend.
Возможности и лимиты#
Все данные в Todos REST API привязаны к вашему аккаунту, поэтому заголовок Authorization обязателен для каждого запроса.
API поддерживает до 30 задач одновременно.
Лимит использования — 100 запросов в минуту.
Также действуют ограничения по длине полей:
title— до 190 символовdesc— до 1000 символов
Строгая схема данных#
Здесь нельзя передавать произвольный JSON-объект.
Каждая задача должна соответствовать фиксированной структуре:
title— название задачиstatus— статус задачиdesc— описание задачи (необязательное поле)
Доступные значения поля status:
TODOIN_PROGRESSDONEARCHIVED
Именно эта строгая схема делает API удобным для типичных CRUD-интерфейсов: списков задач, kanban-досок, фильтрации по статусу и форм с валидацией.
Как работает FIFO#
Todos REST API работает по принципу FIFO.
Если вы добавите новую задачу после достижения лимита в 30 элементов, самая старая задача будет удалена автоматически, а новая сохранится вместо неё.
Это позволяет не управлять лимитом вручную и быстрее тестировать интерфейсы без дополнительной очистки данных.
Создание первой задачи#
Для создания задачи нужно отправить POST - запрос на:
Пример запроса:
Пример ответа:
Где:
id— уникальный идентификатор задачиtitle— название задачиstatus— текущий статусdesc— описание задачиcreatedAt— время созданияupdatedAt— время последнего обновления
Получение одной задачи#
Если вам нужна одна конкретная задача, используйте её id:
Пример запроса:
Пример ответа:
Получение списка задач#
Чтобы получить все доступные задачи, отправьте GET - запрос на:
Пример запроса:
Пример ответа:
Информацию о rate limits можно посмотреть в response headers.
Пример заголовков:
Query-параметры#
Todos REST API поддерживает query-параметры для работы со списком задач.
Они полезны для интерфейсов со списками, пагинацией, поиском и сортировкой.
Доступные параметры:
page— номер страницыlimit— количество задач в ответеsort— сортировка поidзадачи. Доступные значения:ASCиDESCsearch— поиск по полямtitleиdesc
Пример запроса:
Обновление задачи#
Для обновления задачи используется PATCH - запрос:
В отличие от создания, при обновлении можно передавать только те поля, которые вы хотите изменить.
Пример запроса:
Удаление задачи#
Для удаления задачи используется DELETE - запрос:
Пример запроса:
При успешном удалении API возвращает статус 204 No Content.
Playground#
У Todos REST API есть встроенный Playground, где можно быстро создавать, читать, обновлять и удалять задачи прямо из браузера.
Это удобно для тестирования валидации, проверки поиска и отладки CRUD-сценариев без отдельного клиента.