REST API endpoints for rules
Use the REST API to manage rulesets for an enterprise. Rulesets control how people can interact with repositories and code.
Get enterprise ruleset history
Get the history of an enterprise ruleset.
fine_grained_access
no_fine_grained_access
Parameters for "Get enterprise ruleset history"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
enterprise string RequiredThe slug version of the enterprise name. |
ruleset_id integer RequiredThe ID of the ruleset. |
| Name, Type, Description |
|---|
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." Default: |
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." Default: |
http_status_code
| status_code | Description |
|---|---|
200 | OK |
404 | Resource not found |
500 | Internal Error |
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" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/rulesets/RULESET_ID/historyResponse
Status: 200[
{
"version_id": 3,
"actor": {
"id": 1,
"type": "User"
},
"updated_at": "2024-10-23T16:29:47Z"
},
{
"version_id": 2,
"actor": {
"id": 2,
"type": "User"
},
"updated_at": "2024-09-23T16:29:47Z"
},
{
"version_id": 1,
"actor": {
"id": 1,
"type": "User"
},
"updated_at": "2024-08-23T16:29:47Z"
}
]Get enterprise ruleset version
Get a version of an enterprise ruleset.
fine_grained_access
no_fine_grained_access
Parameters for "Get enterprise ruleset version"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
enterprise string RequiredThe slug version of the enterprise name. |
ruleset_id integer RequiredThe ID of the ruleset. |
version_id integer RequiredThe ID of the version |
http_status_code
| status_code | Description |
|---|---|
200 | OK |
404 | Resource not found |
500 | Internal Error |
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" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/rulesets/RULESET_ID/history/VERSION_IDResponse
Status: 200{
"version_id": 3,
"actor": {
"id": 1,
"type": "User"
},
"updated_at": "2024-10-23T16:29:47Z",
"state": {
"id": 21,
"name": "super cool ruleset",
"target": "repository",
"source_type": "Enterprise",
"source": "my-enterprise",
"enforcement": "active",
"conditions": {
"organization_name": {
"include": [
"important_organization"
]
},
"repository_name": {
"include": [
"~ALL"
]
}
},
"rules": [
{
"type": "repository_delete"
}
]
}
}