Todos GraphQL API is a simple GraphQL API for first todo apps, learning projects, and practice with GraphQL queries on a clear task schema.
It is useful when you want to quickly try query, mutation, variables, types, pagination, search, and filters without setting up your own backend.
The main idea of GraphQL here is that you choose exactly which fields to return in the response. This is convenient for interfaces where you do not want to fetch unnecessary data.
Features and limits#
All data in Todos GraphQL API is tied to your account, so the Authorization header is required for every request.
The API supports up to 30 tasks at the same time.
The rate limit is 100 requests per minute.
If the record limit is exceeded, the API uses FIFO behavior: the oldest task is removed automatically and the new one is saved instead.
What you can do with the API#
With Todos GraphQL API, you can:
- get one task by
id - get a list of tasks
- create new tasks
- update existing tasks
- delete tasks
- use pagination, sorting, search, and filters
Data schema#
Todos GraphQL API uses a predictable task schema.
The main types look like this:
Separate input types are used for creating and updating tasks:
This is useful for first GraphQL projects because the structure is obvious and you do not need to guess which fields can be sent in a request.
Main queries and mutations#
The API has two main schema sections:
So query is used to read data, and mutation is used to create, update, and delete tasks.
First request in less than a minute#
The API page already includes a built-in GraphQL playground with ready-made templates for the first request.
It already includes:
- ready schema
- example
query - example
mutation - variable templates
Because of this, the first request can usually be sent in less than 1 minute, even if you are just getting started with GraphQL.
Get one task#
The API endpoint is:
Example query for reading one task:
Variables:
This approach is convenient because you fully control the response. If you only need id, title, and status, you can request only those fields.
Get the task list#
Example query for a task list:
Variables:
Search, sorting, and filters#
Todos GraphQL API supports:
- pagination through
pageandlimit - sorting by
idthroughsort - search by
titleanddescthroughsearch - filters through
filters
Example status filter:
This is useful for tables, todo lists, kanban boards, and any interface where you need more control over the returned data.
Create a task#
Example mutation for creating a task:
Variables:
Update a task#
Example mutation for updating a task:
Variables:
Delete a task#
Example mutation for deletion:
Variables:
If the deletion is successful, the mutation returns true.
Playground#
The main advantage of this page is the built-in GraphQL Playground with ready-made templates.
You do not need to manually write the schema, remember GraphQL syntax, or invent the structure of the first request. You can open the API page, choose a ready example, and send your first request almost immediately.