GraphQL Reference
Query the curated Done Bear GraphQL surface for tasks, projects, teams, labels, users, and workspaces.
Use the Done Bear GraphQL endpoint for curated reads such as viewer, tasks, projects, labels, teams, and workspaces. Do not treat the full raw schema as a stable platform contract yet.
Endpoint
Send POST requests to:
curl https://api.donebear.com/graphql \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data '{"query":"query { viewer { id email } }"}'These docs cover the queries first-party clients rely on. The server does not publish a versioned GraphQL contract artifact today.
Common queries
viewer
Returns the currently authenticated user.
curl https://api.donebear.com/graphql \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data '{
"query": "query { viewer { id email name username } }"
}'tasks
Lists tasks with Relay-style pagination and filtering.
curl https://api.donebear.com/graphql \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data '{
"query": "query Tasks($workspaceId: ID!) { tasks(first: 20, filter: { workspaceId: { eq: $workspaceId } }) { nodes { id title description start startBucket deadlineAt completedAt archivedAt projectId teamId } pageInfo { hasNextPage endCursor } } }",
"variables": {
"workspaceId": "6fd41760-f5ee-4f60-80a6-8d15aeb11043"
}
}'projects
Lists projects in one workspace.
curl https://api.donebear.com/graphql \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data '{
"query": "query Projects($workspaceId: ID!) { projects(first: 20, filter: { workspaceId: { eq: $workspaceId } }) { nodes { id key name status targetDate archivedAt } pageInfo { hasNextPage endCursor } } }",
"variables": {
"workspaceId": "6fd41760-f5ee-4f60-80a6-8d15aeb11043"
}
}'Top-level queries
The server currently exposes:
viewertask,tasksproject,projectslabel,labelsteam,teamByKey,teamsworkspace,workspaceByUrlKey,workspacesuser,userstaskChecklistItem,taskChecklistItemsworkspaceMembership,workspaceMembershipsworkspaceMembershipByUserAndWorkspacemyWorkspaceMembershipsworkspaceInvitation,workspaceInvitationsworkspaceInvitationByCode
Mutations
The server also exposes:
userCreateuserUpdateuserArchive
These mutations exist in the schema, but they are not the main supported integration path. For most integrations, use REST for administrative actions and GraphQL for reads.
Response shape
The endpoint returns standard GraphQL responses:
{
"data": {
"viewer": {
"id": "6fd41760-f5ee-4f60-80a6-8d15aeb11043",
"email": "user@example.com"
}
},
"errors": []
}Invalid queries return GraphQL-style errors:
{
"data": null,
"errors": [
{
"message": "Unknown query",
"extensions": {
"code": "INTERNAL_ERROR"
}
}
]
}Guidance
- Always send a bearer token even when a query appears to work without one.
- Scope your reads by workspace whenever the field supports it.
- Prefer fields already used by the CLI and other first-party clients.
- Treat undocumented schema details as unstable.
Next steps
- Use REST API reference for workspace and API-key operations.
- Read Sync API reference if you need transport-level bootstrap, deltas, or mutations.