REST API endpoints for issue fields
Use the REST API to create and manage issue fields for the authenticated user.
List issue fields
Lists all issue fields for the authenticated user. OAuth app tokens and personal access tokens (classic) need the read:user scope to use this endpoint.
Jetons d'accès granulaires pour «List issue fields»
Ce point de terminaison fonctionne avec les types de tokens à granularité fine suivants:
Le token à granularité fine doit disposer de l’ensemble d’autorisations suivant:
- "Issue Fields" user permissions (read)
Codes d’état de réponse HTTP pour «List issue fields »
| Code de statut | Description |
|---|---|
200 | OK |
404 | Resource not found |
Exemples de code pour «List issue fields »
Si vous accédez à GitHub à GHE.com, remplacez api.github.com par le sous-domaine dédié de votre entreprise à api.SUBDOMAIN.ghe.com.
Exemple de requête
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/user/issue-fieldsResponse
Status: 200[
{
"id": 1,
"node_id": "IFT_kwDNAd3NAZo",
"name": "Text field",
"description": "DRI",
"data_type": "text",
"created_at": "2024-12-11T14:39:09Z",
"updated_at": "2024-12-11T14:39:09Z"
},
{
"id": 2,
"node_id": "IFSS_kwDNAd3NAZs",
"name": "Priority",
"description": "Level of importance",
"data_type": "single_select",
"options": [
{
"id": 1,
"name": "High",
"color": "red"
},
{
"id": 2,
"name": "Medium",
"color": "yellow"
},
{
"id": 3,
"name": "Low",
"color": "green"
}
],
"created_at": "2024-12-11T14:39:09Z",
"updated_at": "2024-12-11T14:39:09Z"
},
{
"id": 3,
"node_id": "IFMS_kwDNAd3NAZt",
"name": "Categories",
"description": "Issue categories",
"data_type": "multi_select",
"options": [
{
"id": 4,
"name": "Frontend",
"color": "blue"
},
{
"id": 5,
"name": "Backend",
"color": "green"
},
{
"id": 6,
"name": "Infrastructure",
"color": "purple"
}
],
"created_at": "2024-12-11T14:39:09Z",
"updated_at": "2024-12-11T14:39:09Z"
}
]Create an issue field
Creates a new issue field for the authenticated user's personal account.
OAuth app tokens and personal access tokens (classic) need the user scope to use this endpoint.
Jetons d'accès granulaires pour «Create an issue field»
Ce point de terminaison fonctionne avec les types de tokens à granularité fine suivants:
Le token à granularité fine doit disposer de l’ensemble d’autorisations suivant:
- "Issue Fields" user permissions (write)
Paramètres pour «Create an issue field »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description | |||||
|---|---|---|---|---|---|
name string RequisName of the issue field. | |||||
description string or null Description of the issue field. | |||||
data_type string RequisThe data type of the issue field. Peut être l'un des: | |||||
visibility string The visibility of the issue field. Can be Peut être l'un des: | |||||
options array of objects or null Options for select fields. Required when data_type is 'single_select' or 'multi_select'. | |||||
Properties of |
| Nom, Type, Description |
|---|
name string RequisName of the option. |
description string or null Description of the option. |
color string RequisColor for the option. Peut être l'un des: |
priority integer RequisPriority of the option for ordering. |
Codes d’état de réponse HTTP pour «Create an issue field »
| Code de statut | Description |
|---|---|
200 | OK |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
Exemples de code pour «Create an issue field »
Si vous accédez à GitHub à GHE.com, remplacez api.github.com par le sous-domaine dédié de votre entreprise à api.SUBDOMAIN.ghe.com.
Exemple de requête
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/user/issue-fields \
-d '{"name":"Priority","description":"Level of importance for the issue","data_type":"single_select","visibility":"restricted","options":[{"name":"High","description":"High priority","color":"red","priority":1},{"name":"Medium","description":"Medium priority","color":"yellow","priority":2},{"name":"Low","description":"Low priority","color":"green","priority":3}]}'Response
Status: 200{
"id": 512,
"node_id": "IF_kwDNAd3NAZr",
"name": "Priority",
"description": "Level of importance for the issue",
"data_type": "single_select",
"options": [
{
"id": 1,
"name": "High",
"description": "High priority",
"color": "red",
"priority": 1,
"created_at": "2025-01-15T10:30:15Z",
"updated_at": "2025-01-15T10:30:15Z"
},
{
"id": 2,
"name": "Medium",
"description": "Medium priority",
"color": "yellow",
"priority": 2,
"created_at": "2025-01-15T10:30:15Z",
"updated_at": "2025-01-15T10:30:15Z"
},
{
"id": 3,
"name": "Low",
"description": "Low priority",
"color": "green",
"priority": 3,
"created_at": "2025-01-15T10:30:15Z",
"updated_at": "2025-01-15T10:30:15Z"
}
],
"created_at": "2025-01-15T10:30:15Z",
"updated_at": "2025-01-15T10:30:15Z"
}Update an issue field
Updates an issue field for the authenticated user.
The authenticated user must own the issue field. OAuth app tokens and personal access tokens (classic)
need the user scope to use this endpoint.
Jetons d'accès granulaires pour «Update an issue field»
Ce point de terminaison fonctionne avec les types de tokens à granularité fine suivants:
Le token à granularité fine doit disposer de l’ensemble d’autorisations suivant:
- "Issue Fields" user permissions (write)
Paramètres pour «Update an issue field »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
issue_field_id integer RequisThe unique identifier of the issue field. |
| Nom, Type, Description | ||||||
|---|---|---|---|---|---|---|
name string Name of the issue field. | ||||||
description string or null Description of the issue field. | ||||||
visibility string The visibility of the issue field. Can be Peut être l'un des: | ||||||
options array of objects Options for select fields. Only applicable when updating single_select or multi_select fields. When provided, this array replaces the entire existing set of options rather than adding to or updating individual options. To retain or update an existing option, include it in the array with its | ||||||
Properties of |
| Nom, Type, Description |
|---|
id integer The id of an existing option to retain or update. Omit this when creating a new option. |
name string RequisName of the option. |
description string or null Description of the option. |
color string RequisColor for the option. Peut être l'un des: |
priority integer RequisPriority of the option for ordering. |
Codes d’état de réponse HTTP pour «Update an issue field »
| Code de statut | Description |
|---|---|
200 | OK |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
Exemples de code pour «Update an issue field »
Si vous accédez à GitHub à GHE.com, remplacez api.github.com par le sous-domaine dédié de votre entreprise à api.SUBDOMAIN.ghe.com.
Exemple de requête
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/user/issue-fields/ISSUE_FIELD_ID \
-d '{"name":"Priority","description":"Level of importance for the issue"}'Response
Status: 200{
"id": 512,
"node_id": "IF_kwDNAd3NAZr",
"name": "Priority",
"description": "Level of importance for the issue",
"data_type": "single_select",
"options": [
{
"id": 1,
"name": "High",
"description": "High priority",
"color": "red",
"priority": 1,
"created_at": "2025-01-15T10:30:15Z",
"updated_at": "2025-01-15T10:30:15Z"
},
{
"id": 2,
"name": "Medium",
"description": "Medium priority",
"color": "yellow",
"priority": 2,
"created_at": "2025-01-15T10:30:15Z",
"updated_at": "2025-01-15T10:30:15Z"
},
{
"id": 3,
"name": "Low",
"description": "Low priority",
"color": "green",
"priority": 3,
"created_at": "2025-01-15T10:30:15Z",
"updated_at": "2025-01-15T10:30:15Z"
}
],
"created_at": "2025-01-15T10:30:15Z",
"updated_at": "2025-01-15T10:30:15Z"
}Delete an issue field
Deletes an issue field for the authenticated user.
The authenticated user must own the issue field. OAuth app tokens and personal access tokens (classic)
need the user scope to use this endpoint.
Jetons d'accès granulaires pour «Delete an issue field»
Ce point de terminaison fonctionne avec les types de tokens à granularité fine suivants:
Le token à granularité fine doit disposer de l’ensemble d’autorisations suivant:
- "Issue Fields" user permissions (write)
Paramètres pour «Delete an issue field »
| Nom, Type, Description |
|---|
accept string Setting to |
| Nom, Type, Description |
|---|
issue_field_id integer RequisThe unique identifier of the issue field. |
Codes d’état de réponse HTTP pour «Delete an issue field »
| Code de statut | Description |
|---|---|
204 | A header with no content is returned. |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
Exemples de code pour «Delete an issue field »
Si vous accédez à GitHub à GHE.com, remplacez api.github.com par le sous-domaine dédié de votre entreprise à api.SUBDOMAIN.ghe.com.
Exemple de requête
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/user/issue-fields/ISSUE_FIELD_IDA header with no content is returned.
Status: 204