SpedySpedy Docs

Statuses

Manage organization-wide workflow statuses that boards can use.

Statuses define the stages of your workflow at the organization level. Each status belongs to a category (PLANNING, ACTIVE, or FINAL) that determines how Spedy treats tickets in that stage. Boards inherit these global statuses and can customize which ones are visible.

List Statuses

GET /api/v1/statuses

Returns all statuses in the organization.

Example Response

{
  "data": [
    {
      "id": "sts_abc123",
      "name": "Backlog",
      "color": "#6B7280",
      "category": "PLANNING",
      "order": 0,
      "isDefault": true,
      "isFinal": false,
      "isMandatory": true
    },
    {
      "id": "sts_def456",
      "name": "In Progress",
      "color": "#3B82F6",
      "category": "ACTIVE",
      "order": 2,
      "isDefault": false,
      "isFinal": false,
      "isMandatory": false
    },
    {
      "id": "sts_ghi789",
      "name": "Done",
      "color": "#10B981",
      "category": "FINAL",
      "order": 4,
      "isDefault": false,
      "isFinal": true,
      "isMandatory": true
    }
  ]
}

Create Status

POST /api/v1/statuses

Permission required: settings:manage-statuses

Request Body

FieldTypeRequiredDescription
namestringYesStatus name (max 50 characters)
colorstringYesColor in hex format (e.g. #3B82F6)
categorystringNoPLANNING, ACTIVE, or FINAL
ordernumberNoDisplay order
isDefaultbooleanNoDefault status for new tickets
isFinalbooleanNoMarks tickets as completed
enabledByDefaultbooleanNoInitially enabled on all boards

Example Request

{
  "name": "In Review",
  "color": "#8B5CF6",
  "category": "ACTIVE",
  "order": 3
}

Get Status

GET /api/v1/statuses/{statusId}

Returns a single status.

Update Status

PATCH /api/v1/statuses/{statusId}

Permission required: settings:manage-statuses

Request Body

FieldTypeRequiredDescription
namestringNoStatus name
colorstringNoColor in hex format
categorystringNoPLANNING, ACTIVE, or FINAL
ordernumberNoDisplay order

Delete Status

DELETE /api/v1/statuses/{statusId}

Permission required: settings:manage-statuses

Deletes a status. Mandatory statuses cannot be deleted. Returns 204 No Content.

Reorder Statuses

POST /api/v1/statuses/reorder

Permission required: settings:manage-statuses

Update the display order of all statuses at once.

Request Body

FieldTypeRequiredDescription
statusIdsstring[]YesOrdered list of status IDs

Example Request

{
  "statusIds": ["sts_abc123", "sts_def456", "sts_ghi789"]
}