Skip to main content

Status Mutations

The Status API provides mutations to manage post statuses in your board.

Create Status

Create a new custom status.

Mutation Structure

mutation CreateStatus(
$boardId: String!
$postId: String
$id: String
$color: String!
$name: String!
) {
createStatus(
boardId: $boardId
postId: $postId
id: $id
color: $color
name: $name
) {
node {
id
color
name
type
postVisibility
}
}
}

Input Fields

FieldTypeDescription
boardIdString!ID of the board to create the status in
postIdStringOptional post ID to associate with the status
idStringOptional custom ID for the status
colorString!Color for the status (for custom display)
nameString!Name of the status

Return Type

FieldTypeDescription
nodeStatus!The created status object

Update Status

Update an existing status.

Mutation Structure

mutation UpdateStatus(
$id: String!
$color: String
$name: String
$postId: String!
$postVisibility: PostVisibility
) {
updateStatus(
id: $id
color: $color
name: $name
postId: $postId
postVisibility: $postVisibility
) {
node {
id
color
name
type
postVisibility
}
}
}

Input Fields

FieldTypeDescription
idString!ID of the status to update
colorStringNew color for the status
nameStringNew name for the status
postIdString!ID of the post associated with this status update
postVisibilityPostVisibilityVisibility setting for posts with this status

Return Type

FieldTypeDescription
nodeStatus!The updated status object

Delete Status

Delete an existing status.

Mutation Structure

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

Input Fields

FieldTypeDescription
idString!ID of the status to delete
postIdStringOptional post ID associated with this status deletion

Return Type

FieldTypeDescription
nodeStatus!The deleted status object

Rearrange Statuses

Reorder the list of statuses.

Mutation Structure

mutation RearrangeStatuses($ids: [String!]!) {
rearrangeStatuses(ids: $ids)
}

Input Fields

FieldTypeDescription
ids[String!]!Ordered array of status IDs representing the new order

Return Type

Returns an array of status IDs in their new order.

Status Object

The Status object returned by mutations has the following fields:

FieldTypeDescription
idString!Status ID
colorString!Status color (for custom display)
nameString!Status name
typeStatusType!Type of status
postVisibilityPostVisibility!Visibility setting for 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

PostVisibility Enum

ValueDescription
PUBLICStatus and posts are visible to all users
PRIVATEStatus and posts are only visible to board members

Error Handling

The Status mutations will return appropriate error messages if:

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

Common error scenarios:

{
"errors": [
{
"message": "Status not found",
"extensions": {
"code": "NOT_FOUND"
}
}
]
}
{
"errors": [
{
"message": "Invalid board ID",
"extensions": {
"code": "BAD_REQUEST"
}
}
]
}
{
"errors": [
{
"message": "Insufficient permissions",
"extensions": {
"code": "FORBIDDEN"
}
}
]
}