Skip to main content

Status

The Status API allows you to query and manage post statuses in your board.

Query Status

Get a status by its ID.

Query Structure

query GetStatus($id: String!, $postCursor: String, $postLimit: Int) {
status(id: $id) {
id
color
name
type
posts(cursor: $postCursor, limit: $postLimit) {
nodes {
id
title
}
hasMore
cursor
}
}
}

Input Fields

FieldTypeDescription
idString!The ID of the status to retrieve

Return Type

FieldTypeDescription
idString!Status ID
colorString!Status color (for custom display)
nameString!Status name
typeStatusType!Type of status
postsStatusPostsPayload!Posts with this status

StatusType Enum

ValueDescription
CUSTOMUser-defined status
ARCHIVEDPost is archived
COMPLETEDPost is completed
MERGEDPost is merged with another post
UNASSIGNEDPost has no status assigned

StatusPostsPayload Type

FieldTypeDescription
nodes[Post]!Array of posts with this status
hasMoreBoolean!Whether there are more posts to load
cursorStringCursor for pagination

Get board statuses

Get all the statuses corresponding to a board

Query Structure

query GetBoardStatuses {
listStatuses {
id
name
color
type
}
}

Return Type

Returns a list of statuses:

FieldTypeDescription
idString!Status ID
colorString!Status color (for custom display)
nameString!Status name
typeStatusType!Type of status

Create Status

Create a new status.

Mutation Structure

mutation CreateStatus(
$color: String!
$name: String!
) {
createStatus(
color: $color
name: $name
) {
id
color
name
type
}
}

Input Fields

FieldTypeDescription
colorString!Color for the status (for custom display)
nameString!Name of the status

Return Type

Returns the created Status object with the fields specified in the query.

Update Status

Update an existing status.

Mutation Structure

mutation UpdateStatus(
$id: String!
$color: String
$name: String
) {
updateStatus(
id: $id
color: $color
name: $name
) {
id
color
name
type
}
}

Input Fields

FieldTypeDescription
idString!ID of the status to update
colorStringNew color for the status (optional)
nameStringNew name for the status (optional)

Return Type

Returns the updated Status object with the fields specified in the query.

Delete Status

Delete an existing status.

Mutation Structure

mutation DeleteStatus($id: String!) {
deleteStatus(id: $id) {
id
name
type
}
}

Input Fields

FieldTypeDescription
idString!ID of the status to delete

Return Type

Returns the deleted Status object with the fields specified in the query.

Error Handling

The Status API will return appropriate error messages if:

  • The status ID does not exist
  • The user does not have permission to perform the operation
  • Required fields are missing or invalid

Common error scenarios:

{
"errors": [
{
"message": "Status not found",
"extensions": {
"code": "NOT_FOUND"
}
}
]
}
{
"errors": [
{
"message": "Invalid status color format",
"extensions": {
"code": "BAD_REQUEST"
}
}
]
}