REST API endpoints for issue fields
Use the REST API to create and manage issue fields for an organization.
List issue fields for an organization
Lists all issue fields for an organization. OAuth app tokens and personal access tokens (classic) need the read:org scope to use this endpoint.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Issue Fields" organization permissions (read)
Parameters for "List issue fields for an organization"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
org string RequiredThe organization name. The name is not case sensitive. |
http_status_code
| status_code | Description |
|---|---|
200 | OK |
404 | Resource not found |
code_samples
request_example
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/orgs/ORG/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"
}
]Create issue field for an organization
Creates a new issue field for an organization.
You can find out more about issue fields in Managing issue fields in an organization.
To use this endpoint, the authenticated user must be an administrator for the organization. OAuth app tokens and
personal access tokens (classic) need the admin:org scope to use this endpoint.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Issue Fields" organization permissions (write)
Parameters for "Create issue field for an organization"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
org string RequiredThe organization name. The name is not case sensitive. |
| Name, Type, Description | |||||
|---|---|---|---|---|---|
name string RequiredName of the issue field. | |||||
description string or null Description of the issue field. | |||||
data_type string RequiredThe data type of the issue field. Can be one of: | |||||
visibility string The visibility of the issue field. Can be Can be one of: | |||||
options array of objects or null Options for single select fields. Required when data_type is 'single_select'. | |||||
Properties of |
| Name, Type, Description |
|---|
name string RequiredName of the option. |
description string or null Description of the option. |
color string RequiredColor for the option. Can be one of: |
priority integer RequiredPriority of the option for ordering. |
http_status_code
| status_code | Description |
|---|---|
200 | OK |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
code_samples
request_example
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/orgs/ORG/issue-fields \
-d '{"name":"Priority","description":"Level of importance for the issue","data_type":"single_select","options":[{"name":"High","description":"High priority","color":"red"},{"name":"Medium","description":"Medium priority","color":"yellow"},{"name":"Low","description":"Low priority","color":"green"}]}'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 issue field for an organization
Updates an issue field for an organization.
You can find out more about issue fields in Managing issue fields in an organization.
To use this endpoint, the authenticated user must be an administrator for the organization. OAuth app tokens and
personal access tokens (classic) need the admin:org scope to use this endpoint.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Issue Fields" organization permissions (write)
Parameters for "Update issue field for an organization"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
org string RequiredThe organization name. The name is not case sensitive. |
issue_field_id integer RequiredThe unique identifier of the issue field. |
| Name, 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 Can be one of: | ||||||
options array of objects Options for single select fields. Only applicable when updating single_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 |
| Name, Type, Description |
|---|
id integer The id of an existing option to retain or update. Omit this when creating a new option. |
name string RequiredName of the option. |
description string or null Description of the option. |
color string RequiredColor for the option. Can be one of: |
priority integer RequiredPriority of the option for ordering. |
http_status_code
| status_code | Description |
|---|---|
200 | OK |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
code_samples
request_example
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/orgs/ORG/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 issue field for an organization
Deletes an issue field for an organization.
You can find out more about issue fields in Managing issue fields in an organization.
To use this endpoint, the authenticated user must be an administrator for the organization. OAuth app tokens and
personal access tokens (classic) need the admin:org scope to use this endpoint.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Issue Fields" organization permissions (write)
Parameters for "Delete issue field for an organization"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
org string RequiredThe organization name. The name is not case sensitive. |
issue_field_id integer RequiredThe unique identifier of the issue field. |
http_status_code
| status_code | Description |
|---|---|
204 | A header with no content is returned. |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
code_samples
request_example
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/orgs/ORG/issue-fields/ISSUE_FIELD_IDA header with no content is returned.
Status: 204