Ticket Fields
/api/helpdesk/ticket-fields/{fieldKey}
Exposes registered, open, and user-created HelpDesk ticket-field settings.
The endpoint is intentionally request-local: annotation setters only change this object, while commit reconstructs a complete manager property map and delegates validation and persistence to TicketFieldSettingsManager. A normal DELETE operation is not exposed. Hiding a field is represented by FIELD_VISIBILITY#HIDDEN; permanent deletion is available only through the confirmation-protected action.
GET /api/helpdesk/ticket-fields/{fieldKey}
Exposes registered, open, and user-created HelpDesk ticket-field settings.
The endpoint is intentionally request-local: annotation setters only change this object, while commit reconstructs a complete manager property map and delegates validation and persistence to TicketFieldSettingsManager. A normal DELETE operation is not exposed. Hiding a field is represented by FIELD_VISIBILITY#HIDDEN; permanent deletion is available only through the confirmation-protected action.
Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
fieldKey |
path | string |
yes | field key |
fields |
query | string |
no | Comma-separated readable properties to include in the JSON response. |
Response
| Status | Content Type | Schema | Description |
|---|---|---|---|
200 |
application/json |
TicketFieldRead |
Successful response. |
Example Request
# Request
GET /api/helpdesk/ticket-fields/<fieldKey> HTTP/1.1
Accept: application/json
Authorization: Bearer <access-token>
# Response
HTTP/1.1 200 OK
Content-Type: application/json
{
"key": "string",
"custom": true,
"openField": true,
"deletable": true,
"deactivatable": true
}
PATCH /api/helpdesk/ticket-fields/{fieldKey}
Exposes registered, open, and user-created HelpDesk ticket-field settings.
The endpoint is intentionally request-local: annotation setters only change this object, while commit reconstructs a complete manager property map and delegates validation and persistence to TicketFieldSettingsManager. A normal DELETE operation is not exposed. Hiding a field is represented by FIELD_VISIBILITY#HIDDEN; permanent deletion is available only through the confirmation-protected action.
Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
fieldKey |
path | string |
yes | field key |
Request Body
| Content Type | Schema | Required | Description |
|---|---|---|---|
application/json |
TicketFieldUpdate |
yes | — |
Response
| Status | Content Type | Schema | Description |
|---|---|---|---|
200 |
application/json |
TicketFieldRead |
Successful response. |
Example Request
# Request
PATCH /api/helpdesk/ticket-fields/<fieldKey> HTTP/1.1
Accept: application/json
Authorization: Bearer <access-token>
Content-Type: application/json
{
"key": "string",
"type": "Text",
"labels": [
{
"locale": "string",
"value": "string"
}
],
"descriptions": [
{
"locale": "string",
"value": "string"
}
],
"sortPriority": 0
}
# Response
HTTP/1.1 200 OK
Content-Type: application/json
{
"key": "string",
"custom": true,
"openField": true,
"deletable": true,
"deactivatable": true
}
PUT /api/helpdesk/ticket-fields/{fieldKey}
Exposes registered, open, and user-created HelpDesk ticket-field settings.
The endpoint is intentionally request-local: annotation setters only change this object, while commit reconstructs a complete manager property map and delegates validation and persistence to TicketFieldSettingsManager. A normal DELETE operation is not exposed. Hiding a field is represented by FIELD_VISIBILITY#HIDDEN; permanent deletion is available only through the confirmation-protected action.
Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
fieldKey |
path | string |
yes | field key |
Request Body
| Content Type | Schema | Required | Description |
|---|---|---|---|
application/json |
TicketFieldUpdate |
yes | — |
Response
| Status | Content Type | Schema | Description |
|---|---|---|---|
200 |
application/json |
TicketFieldRead |
Successful response. |
Example Request
# Request
PUT /api/helpdesk/ticket-fields/<fieldKey> HTTP/1.1
Accept: application/json
Authorization: Bearer <access-token>
Content-Type: application/json
{
"key": "string",
"type": "Text",
"labels": [
{
"locale": "string",
"value": "string"
}
],
"descriptions": [
{
"locale": "string",
"value": "string"
}
],
"sortPriority": 0
}
# Response
HTTP/1.1 200 OK
Content-Type: application/json
{
"key": "string",
"custom": true,
"openField": true,
"deletable": true,
"deactivatable": true
}
Common Error Responses
The status codes 400, 403, 404, 405, 406, 409, 413, 415, and 500 use the same ApiError JSON error format:
{
"status": 404,
"code": "route_not_found",
"message": "The requested API route does not exist.",
"details": []
}
Schemas
Request and response schemas used on this page.
TicketFieldRead
| Property | Type | Required | Description |
|---|---|---|---|
key |
string |
no |
Stable field key. It is writable only while creating a field. |
custom |
boolean |
no |
Whether this setting is backed by a custom field. |
openField |
boolean |
no |
Whether this custom field is one of the built-in open fields. |
deletable |
boolean |
no |
Whether permanent deletion is supported for this field. |
deactivatable |
boolean |
no |
Whether visibility can be changed to |
typeChangeable |
boolean |
no |
Whether a custom field may change its field type. |
selectModeChangeable |
boolean |
no |
Whether a selectable custom field may change its selection mode. |
canConfigureDefault |
boolean |
no |
Whether the field's default value is configurable. |
canConfigureTranslation |
boolean |
no |
Whether labels and descriptions can be configured. |
canConfigureMandatory |
boolean |
no |
Whether mandatory and end-user editability settings are configurable. |
type |
string [Text, SelectString, DateTime, Date, Time, Boolean, Rating, Link, Double, Number, Currency, MultiLineText, other] |
no |
Field-settings type. |
editorType |
string |
no |
Runtime editor type used by standalone HelpDesk editors. The value is |
supportedOperators |
array<string [EQUALS, EQUALS_NOT, EQUALS_IGNORECASE, IS_OR_IS_BELOW, CONTAINS, CONTAINS_NOT, ENDSWITH, STARTSWITH, IS_NOT_EMPTY, GREATER_OR_EQUAL, GREATER_THAN, LESS_OR_EQUAL, LESS_THAN]> |
no |
Comparison operators supported by the runtime value type. The list is empty when the setting has no registered ticket field or ticket attribute. |
labels |
array<LocalizedText> |
no |
Localized labels keyed by locale. |
descriptions |
array<LocalizedText> |
no |
Localized descriptions keyed by locale. |
sortPriority |
integer (int32) |
no |
Display ordering priority. |
visibility |
string [ENDUSER, SUPPORTER, HIDDEN, SYSTEM] |
no |
Field visibility. |
supporterCanEdit |
boolean |
no |
Whether supporters may edit the field. |
enduserEditable |
string [REQUIRED, VISIBLE, HIDDEN] |
no |
End-user editability and mandatory state. |
enduserEditableDefaultChange |
string [REQUIRED, VISIBLE, HIDDEN] |
no |
End-user editability when a default value is already set. |
mandatoryForDispatcher |
boolean |
no |
Whether the field is mandatory for dispatchers. |
mandatoryForResource |
boolean |
no |
Whether the field is mandatory for resource members. |
defaultMustBeChangedForDispatcher |
boolean |
no |
Whether a dispatcher must replace the default value. |
defaultMustBeChangedForResource |
boolean |
no |
Whether a resource member must replace the default value. |
defaultValue |
string |
no |
Type-specific default value represented in the field's string format. |
selectMode |
string [NORMAL, ALLOW_OWN, ALLOW_MULTI] |
no |
Selection mode for selectable custom fields. |
selectOptions |
array<SelectOptionSetting> |
no |
Static selectable values and their audience. |
selectSql |
SelectSqlSource |
no |
Optional SQL-backed selectable-value source. |
linkPattern |
LinkPattern |
no |
Optional URL and label pattern for link fields. |
ignoreTimezone |
boolean |
no |
Whether date and date-time values ignore timezone conversion. |
ratingMaximum |
integer (int32) |
no |
Maximum supported rating value. The manager currently fixes this at ten. |
defaultIdentifierSelection |
string |
no |
User-field key used as the default ticket identifier source. |
LocalizedText
| Property | Type | Required | Description |
|---|---|---|---|
locale |
string |
no | — |
value |
string |
no | — |
SelectOptionSetting
| Property | Type | Required | Description |
|---|---|---|---|
audience |
string [SUPPORTER_ONLY, SUPPORTER_AND_ENDUSER] |
no | — |
metadata |
array<string> |
no | — |
value |
string |
no | — |
SelectSqlSource
| Property | Type | Required | Description |
|---|---|---|---|
query |
string |
no | — |
connectionName |
string |
no | — |
enabled |
boolean |
no | — |
LinkPattern
| Property | Type | Required | Description |
|---|---|---|---|
pattern |
string |
no | — |
label |
string |
no | — |
ApiError
| Property | Type | Required | Description |
|---|---|---|---|
status |
integer (int32) |
yes | — |
code |
string |
yes | — |
message |
string |
yes | — |
details |
array<object> |
no | — |
TicketFieldUpdate
| Property | Type | Required | Description |
|---|---|---|---|
key |
string |
no |
Stable field key. It is writable only while creating a field. |
type |
string [Text, SelectString, DateTime, Date, Time, Boolean, Rating, Link, Double, Number, Currency, MultiLineText, other] |
no |
Field-settings type. |
labels |
array<LocalizedText> |
no |
Localized labels keyed by locale. |
descriptions |
array<LocalizedText> |
no |
Localized descriptions keyed by locale. |
sortPriority |
integer (int32) |
no |
Display ordering priority. |
visibility |
string [ENDUSER, SUPPORTER, HIDDEN, SYSTEM] |
no |
Field visibility. |
supporterCanEdit |
boolean |
no |
Whether supporters may edit the field. |
enduserEditable |
string [REQUIRED, VISIBLE, HIDDEN] |
no |
End-user editability and mandatory state. |
enduserEditableDefaultChange |
string [REQUIRED, VISIBLE, HIDDEN] |
no |
End-user editability when a default value is already set. |
mandatoryForDispatcher |
boolean |
no |
Whether the field is mandatory for dispatchers. |
mandatoryForResource |
boolean |
no |
Whether the field is mandatory for resource members. |
defaultMustBeChangedForDispatcher |
boolean |
no |
Whether a dispatcher must replace the default value. |
defaultMustBeChangedForResource |
boolean |
no |
Whether a resource member must replace the default value. |
defaultValue |
string |
no |
Type-specific default value represented in the field's string format. |
selectMode |
string [NORMAL, ALLOW_OWN, ALLOW_MULTI] |
no |
Selection mode for selectable custom fields. |
selectOptions |
array<SelectOptionSetting> |
no |
Static selectable values and their audience. |
selectSql |
SelectSqlSource |
no |
Optional SQL-backed selectable-value source. |
linkPattern |
LinkPattern |
no |
Optional URL and label pattern for link fields. |
ignoreTimezone |
boolean |
no |
Whether date and date-time values ignore timezone conversion. |
defaultIdentifierSelection |
string |
no |
User-field key used as the default ticket identifier source. |
confirmDataLoss |
boolean |
no |
Write-only confirmation for destructive or structural changes. |