Documentation menu
These are pre-release docs from the main branch.

API reference

6 operations in fields. Raw spec: openapi.json.

GET/api/v1/boards/{id}/fields

GET /api/boards/{id}/fields — active ticket definitions governing this board (org-wide plus board-owned), sort-order stable.

Parameters

NameInTypeRequiredDescription
idpathstringYes

Responses

StatusDescription
200

Security: bearer

POST/api/v1/boards/{id}/fields

POST /api/boards/{id}/fields — creates a board-scoped definition (board-admin gated); emits `custom_field.def_created`.

Parameters

NameInTypeRequiredDescription
idpathstringYes

Request body

CreateFieldDefRequest

Responses

StatusDescription
200
422invalid definition

Security: bearer

PATCH/api/v1/boards/{id}/fields/{field_id}

PATCH /api/boards/{id}/fields/{field_id} — partial edit of a board-owned definition. Kind is immutable (it would orphan stored values); emit `custom_field.def_updated` on success.

Parameters

NameInTypeRequiredDescription
idpathstringYes
field_idpathstringYes

Request body

UpdateFieldDefRequest

Responses

StatusDescription
200

Security: bearer

DELETE/api/v1/boards/{id}/fields/{field_id}

DELETE /api/boards/{id}/fields/{field_id} — removes the definition and cascades its stored values; emits `custom_field.def_removed`.

Parameters

NameInTypeRequiredDescription
idpathstringYes
field_idpathstringYes

Responses

StatusDescription
200

Security: bearer

PUT/api/v1/tickets/{id}/fields/{field_id}

PUT /api/tickets/{id}/fields/{field_id} — validates the incoming JSON against the definition (kind coercion, option membership) and stores the canonical encoding; emits `ticket.field_set`.

Parameters

NameInTypeRequiredDescription
idpathstringYes
field_idpathstringYes

Request body

SetTicketFieldValueRequest

Responses

StatusDescription
200
422value does not validate against the definition

Security: bearer

DELETE/api/v1/tickets/{id}/fields/{field_id}

DELETE /api/tickets/{id}/fields/{field_id} — clears one value; refuses (422) to empty a REQUIRED definition; emits `ticket.field_cleared`.

Parameters

NameInTypeRequiredDescription
idpathstringYes
field_idpathstringYes

Responses

StatusDescription
200
422field is required and cannot be emptied

Security: bearer