Rules
Use the REST API to manage rulesets for repositories. Rulesets control how people can interact with selected branches and tags in a repository.
Get rules for a branch
Returns all rules that apply to the specified branch. The branch does not need to exist; rules that would apply to a branch with that name will be returned. All rules that apply will be returned, regardless of the level at which they are configured.
Parameters for "Get rules for a branch"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
owner string RequiredThe account owner of the repository. The name is not case sensitive. |
repo string RequiredThe name of the repository without the |
branch string RequiredThe name of the branch. Cannot contain wildcard characters. To use wildcard characters in branch names, use the GraphQL API. |
| Name, Type, Description |
|---|
per_page integer The number of results per page (max 100). Default: |
page integer Page number of the results to fetch. Default: |
HTTP response status codes for "Get rules for a branch"
| Status code | Description |
|---|---|
200 | OK |
Code samples for "Get rules for a branch"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/rules/branches/BRANCHResponse
Status: 200[
{
"type": "commit_message_pattern",
"ruleset_source_type": "Repository",
"ruleset_source": "monalisa/my-repo",
"ruleset_id": 42,
"parameters": {
"operator": "starts_with",
"pattern": "issue"
}
},
{
"type": "commit_author_email_pattern",
"ruleset_source_type": "Organization",
"ruleset_source": "my-org",
"ruleset_id": 73,
"parameters": {
"operator": "contains",
"pattern": "github"
}
}
]Get all repository rulesets
Get all the rulesets for a repository.
Parameters for "Get all repository rulesets"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
owner string RequiredThe account owner of the repository. The name is not case sensitive. |
repo string RequiredThe name of the repository without the |
| Name, Type, Description |
|---|
per_page integer The number of results per page (max 100). Default: |
page integer Page number of the results to fetch. Default: |
includes_parents boolean Include rulesets configured at higher levels that apply to this repository Default: |
HTTP response status codes for "Get all repository rulesets"
| Status code | Description |
|---|---|
200 | OK |
404 | Resource not found |
500 | Internal Error |
Code samples for "Get all repository rulesets"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/rulesetsResponse
Status: 200[
{
"id": 42,
"name": "super cool ruleset",
"source_type": "Repository",
"source": "monalisa/my-repo",
"enforcement": "enabled",
"node_id": "RRS_lACkVXNlcgQB",
"_links": {
"self": {
"href": "https://api.github.com/repos/monalisa/my-repo/rulesets/42"
},
"html": {
"href": "https://github.com/monalisa/my-repo/rules/42"
}
},
"created_at": "2023-07-15T08:43:03Z",
"updated_at": "2023-08-23T16:29:47Z"
},
{
"id": 314,
"name": "Another ruleset",
"source_type": "Repository",
"source": "monalisa/my-repo",
"enforcement": "enabled",
"node_id": "RRS_lACkVXNlcgQQ",
"_links": {
"self": {
"href": "https://api.github.com/repos/monalisa/my-repo/rulesets/314"
},
"html": {
"href": "https://github.com/monalisa/my-repo/rules/314"
}
},
"created_at": "2023-08-15T08:43:03Z",
"updated_at": "2023-09-23T16:29:47Z"
}
]Create a repository ruleset
Create a ruleset for a repository.
Parameters for "Create a repository ruleset"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
owner string RequiredThe account owner of the repository. The name is not case sensitive. |
repo string RequiredThe name of the repository without the |
| Name, Type, Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
name string RequiredThe name of the ruleset. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
target string The target of the ruleset. Can be one of: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enforcement string RequiredThe enforcement level of the ruleset. Can be one of: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bypass_actors array of objects The actors that can bypass the rules in this ruleset | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Properties of |
| Name, Type, Description |
|---|
actor_id integer RequiredThe ID of the actor that can bypass a ruleset |
actor_type string RequiredThe type of actor that can bypass a ruleset Can be one of: |
bypass_mode string RequiredWhen the specified actor can bypass the ruleset. Can be one of: |
conditions object Parameters for a repository ruleset ref name condition
Properties of conditions
| Name, Type, Description | |||
|---|---|---|---|
ref_name object | |||
Properties of |
| Name, Type, Description |
|---|
include array of strings Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts |
exclude array of strings Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match. |
rules array of objects An array of rules within the ruleset.
Can be one of these objects:
| Name, Type, Description | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
creation object RequiredOnly allow users with bypass permission to create matching refs. | |||||||||||
Properties of |
| Name, Type, Description |
|---|
type string RequiredValue: |
update object RequiredOnly allow users with bypass permission to update matching refs.
Properties of update
| Name, Type, Description | ||
|---|---|---|
type string RequiredValue: | ||
parameters object | ||
Properties of |
| Name, Type, Description |
|---|
update_allows_fetch_and_merge boolean RequiredBranch can pull changes from its upstream repository |
deletion object RequiredOnly allow users with bypass permissions to delete matching refs.
Properties of deletion
| Name, Type, Description |
|---|
type string RequiredValue: |
required_linear_history object RequiredPrevent merge commits from being pushed to matching branches.
Properties of required_linear_history
| Name, Type, Description |
|---|
type string RequiredValue: |
required_deployments object RequiredChoose which environments must be successfully deployed to before branches can be merged into a branch that matches this rule.
Properties of required_deployments
| Name, Type, Description | ||
|---|---|---|
type string RequiredValue: | ||
parameters object | ||
Properties of |
| Name, Type, Description |
|---|
required_deployment_environments array of strings RequiredThe environments that must be successfully deployed to before branches can be merged. |
required_signatures object RequiredCommits pushed to matching branches must have verified signatures.
Properties of required_signatures
| Name, Type, Description |
|---|
type string RequiredValue: |
pull_request object RequiredRequire all commits be made to a non-target branch and submitted via a pull request before they can be merged.
Properties of pull_request
| Name, Type, Description | ||||||
|---|---|---|---|---|---|---|
type string RequiredValue: | ||||||
parameters object | ||||||
Properties of |
| Name, Type, Description |
|---|
dismiss_stale_reviews_on_push boolean RequiredNew, reviewable commits pushed will dismiss previous pull request review approvals. |
require_code_owner_review boolean RequiredRequire an approving review in pull requests that modify files that have a designated code owner. |
require_last_push_approval boolean RequiredWhether the most recent reviewable push must be approved by someone other than the person who pushed it. |
required_approving_review_count integer RequiredThe number of approving reviews that are required before a pull request can be merged. |
required_review_thread_resolution boolean RequiredAll conversations on code must be resolved before a pull request can be merged. |
required_status_checks object RequiredChoose which status checks must pass before branches can be merged into a branch that matches this rule. When enabled, commits must first be pushed to another branch, then merged or pushed directly to a branch that matches this rule after status checks have passed.
Properties of required_status_checks
| Name, Type, Description | |||||||
|---|---|---|---|---|---|---|---|
type string RequiredValue: | |||||||
parameters object | |||||||
Properties of |
| Name, Type, Description | |||
|---|---|---|---|
required_status_checks array of objects RequiredStatus checks that are required. | |||
Properties of |
| Name, Type, Description |
|---|
context string RequiredThe status check context name that must be present on the commit. |
integration_id integer The optional integration ID that this status check must originate from. |
strict_required_status_checks_policy boolean RequiredWhether pull requests targeting a matching branch must be tested with the latest code. This setting will not take effect unless at least one status check is enabled.
non_fast_forward object RequiredPrevent users with push access from force pushing to branches.
Properties of non_fast_forward
| Name, Type, Description |
|---|
type string RequiredValue: |
commit_message_pattern object RequiredParameters to be used for the commit_message_pattern rule
Properties of commit_message_pattern
| Name, Type, Description | |||||
|---|---|---|---|---|---|
type string RequiredValue: | |||||
parameters object | |||||
Properties of |
| Name, Type, Description |
|---|
name string How this rule will appear to users. |
negate boolean If true, the rule will fail if the pattern matches. |
operator string RequiredThe operator to use for matching. Can be one of: |
pattern string RequiredThe pattern to match with. |
commit_author_email_pattern object RequiredParameters to be used for the commit_author_email_pattern rule
| Name, Type, Description | |||||
|---|---|---|---|---|---|
type string RequiredValue: | |||||
parameters object | |||||
Properties of |
| Name, Type, Description |
|---|
name string How this rule will appear to users. |
negate boolean If true, the rule will fail if the pattern matches. |
operator string RequiredThe operator to use for matching. Can be one of: |
pattern string RequiredThe pattern to match with. |
committer_email_pattern object RequiredParameters to be used for the committer_email_pattern rule
Properties of committer_email_pattern
| Name, Type, Description | |||||
|---|---|---|---|---|---|
type string RequiredValue: | |||||
parameters object | |||||
Properties of |
| Name, Type, Description |
|---|
name string How this rule will appear to users. |
negate boolean If true, the rule will fail if the pattern matches. |
operator string RequiredThe operator to use for matching. Can be one of: |
pattern string RequiredThe pattern to match with. |
branch_name_pattern object RequiredParameters to be used for the branch_name_pattern rule
Properties of branch_name_pattern
| Name, Type, Description | |||||
|---|---|---|---|---|---|
type string RequiredValue: | |||||
parameters object | |||||
Properties of |
| Name, Type, Description |
|---|
name string How this rule will appear to users. |
negate boolean If true, the rule will fail if the pattern matches. |
operator string RequiredThe operator to use for matching. Can be one of: |
pattern string RequiredThe pattern to match with. |
tag_name_pattern object RequiredParameters to be used for the tag_name_pattern rule
Properties of tag_name_pattern
| Name, Type, Description | |||||
|---|---|---|---|---|---|
type string RequiredValue: | |||||
parameters object | |||||
Properties of |
| Name, Type, Description |
|---|
name string How this rule will appear to users. |
negate boolean If true, the rule will fail if the pattern matches. |
operator string RequiredThe operator to use for matching. Can be one of: |
pattern string RequiredThe pattern to match with. |
HTTP response status codes for "Create a repository ruleset"
| Status code | Description |
|---|---|
201 | Created |
404 | Resource not found |
500 | Internal Error |
Code samples for "Create a repository ruleset"
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/rulesets \
-d '{"name":"super cool ruleset","target":"branch","enforcement":"active","bypass_actors":[{"actor_id":234,"actor_type":"Team","bypass_mode":"always"}],"conditions":{"ref_name":{"include":["refs/heads/main","refs/heads/master"],"exclude":["refs/heads/dev*"]}},"rules":[{"type":"commit_author_email_pattern","parameters":{"operator":"contains","pattern":"github"}}]}'Response
Status: 201{
"id": 42,
"name": "super cool ruleset",
"target": "branch",
"source_type": "Repository",
"source": "monalisa/my-repo",
"enforcement": "active",
"bypass_actors": [
{
"actor_id": 234,
"actor_type": "Team",
"bypass_mode": "always"
}
],
"conditions": {
"ref_name": {
"include": [
"refs/heads/main",
"refs/heads/master"
],
"exclude": [
"refs/heads/dev*"
]
}
},
"rules": [
{
"type": "commit_author_email_pattern",
"parameters": {
"operator": "contains",
"pattern": "github"
}
}
],
"node_id": "RRS_lACkVXNlcgQB",
"_links": {
"self": {
"href": "https://api.github.com/repos/monalisa/my-repo/rulesets/42"
},
"html": {
"href": "https://github.com/monalisa/my-repo/rules/42"
}
},
"created_at": "2023-07-15T08:43:03Z",
"updated_at": "2023-08-23T16:29:47Z"
}Get a repository ruleset
Get a ruleset for a repository.
Parameters for "Get a repository ruleset"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
owner string RequiredThe account owner of the repository. The name is not case sensitive. |
repo string RequiredThe name of the repository without the |
ruleset_id integer RequiredThe ID of the ruleset. |
| Name, Type, Description |
|---|
includes_parents boolean Include rulesets configured at higher levels that apply to this repository Default: |
HTTP response status codes for "Get a repository ruleset"
| Status code | Description |
|---|---|
200 | OK |
404 | Resource not found |
500 | Internal Error |
Code samples for "Get a repository ruleset"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/rulesets/RULESET_IDResponse
Status: 200{
"id": 42,
"name": "super cool ruleset",
"target": "branch",
"source_type": "Repository",
"source": "monalisa/my-repo",
"enforcement": "active",
"bypass_actors": [
{
"actor_id": 234,
"actor_type": "Team",
"bypass_mode": "always"
}
],
"conditions": {
"ref_name": {
"include": [
"refs/heads/main",
"refs/heads/master"
],
"exclude": [
"refs/heads/dev*"
]
}
},
"rules": [
{
"type": "commit_author_email_pattern",
"parameters": {
"operator": "contains",
"pattern": "github"
}
}
],
"node_id": "RRS_lACkVXNlcgQB",
"_links": {
"self": {
"href": "https://api.github.com/repos/monalisa/my-repo/rulesets/42"
},
"html": {
"href": "https://github.com/monalisa/my-repo/rules/42"
}
},
"created_at": "2023-07-15T08:43:03Z",
"updated_at": "2023-08-23T16:29:47Z"
}Update a repository ruleset
Update a ruleset for a repository.
Parameters for "Update a repository ruleset"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
owner string RequiredThe account owner of the repository. The name is not case sensitive. |
repo string RequiredThe name of the repository without the |
ruleset_id integer RequiredThe ID of the ruleset. |
| Name, Type, Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
name string The name of the ruleset. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
target string The target of the ruleset. Can be one of: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enforcement string The enforcement level of the ruleset. Can be one of: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bypass_actors array of objects The actors that can bypass the rules in this ruleset | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Properties of |
| Name, Type, Description |
|---|
actor_id integer RequiredThe ID of the actor that can bypass a ruleset |
actor_type string RequiredThe type of actor that can bypass a ruleset Can be one of: |
bypass_mode string RequiredWhen the specified actor can bypass the ruleset. Can be one of: |
conditions object Parameters for a repository ruleset ref name condition
Properties of conditions
| Name, Type, Description | |||
|---|---|---|---|
ref_name object | |||
Properties of |
| Name, Type, Description |
|---|
include array of strings Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts |
exclude array of strings Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match. |
rules array of objects An array of rules within the ruleset.
Can be one of these objects:
| Name, Type, Description | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
creation object RequiredOnly allow users with bypass permission to create matching refs. | |||||||||||
Properties of |
| Name, Type, Description |
|---|
type string RequiredValue: |
update object RequiredOnly allow users with bypass permission to update matching refs.
Properties of update
| Name, Type, Description | ||
|---|---|---|
type string RequiredValue: | ||
parameters object | ||
Properties of |
| Name, Type, Description |
|---|
update_allows_fetch_and_merge boolean RequiredBranch can pull changes from its upstream repository |
deletion object RequiredOnly allow users with bypass permissions to delete matching refs.
Properties of deletion
| Name, Type, Description |
|---|
type string RequiredValue: |
required_linear_history object RequiredPrevent merge commits from being pushed to matching branches.
Properties of required_linear_history
| Name, Type, Description |
|---|
type string RequiredValue: |
required_deployments object RequiredChoose which environments must be successfully deployed to before branches can be merged into a branch that matches this rule.
Properties of required_deployments
| Name, Type, Description | ||
|---|---|---|
type string RequiredValue: | ||
parameters object | ||
Properties of |
| Name, Type, Description |
|---|
required_deployment_environments array of strings RequiredThe environments that must be successfully deployed to before branches can be merged. |
required_signatures object RequiredCommits pushed to matching branches must have verified signatures.
Properties of required_signatures
| Name, Type, Description |
|---|
type string RequiredValue: |
pull_request object RequiredRequire all commits be made to a non-target branch and submitted via a pull request before they can be merged.
Properties of pull_request
| Name, Type, Description | ||||||
|---|---|---|---|---|---|---|
type string RequiredValue: | ||||||
parameters object | ||||||
Properties of |
| Name, Type, Description |
|---|
dismiss_stale_reviews_on_push boolean RequiredNew, reviewable commits pushed will dismiss previous pull request review approvals. |
require_code_owner_review boolean RequiredRequire an approving review in pull requests that modify files that have a designated code owner. |
require_last_push_approval boolean RequiredWhether the most recent reviewable push must be approved by someone other than the person who pushed it. |
required_approving_review_count integer RequiredThe number of approving reviews that are required before a pull request can be merged. |
required_review_thread_resolution boolean RequiredAll conversations on code must be resolved before a pull request can be merged. |
required_status_checks object RequiredChoose which status checks must pass before branches can be merged into a branch that matches this rule. When enabled, commits must first be pushed to another branch, then merged or pushed directly to a branch that matches this rule after status checks have passed.
Properties of required_status_checks
| Name, Type, Description | |||||||
|---|---|---|---|---|---|---|---|
type string RequiredValue: | |||||||
parameters object | |||||||
Properties of |
| Name, Type, Description | |||
|---|---|---|---|
required_status_checks array of objects RequiredStatus checks that are required. | |||
Properties of |
| Name, Type, Description |
|---|
context string RequiredThe status check context name that must be present on the commit. |
integration_id integer The optional integration ID that this status check must originate from. |
strict_required_status_checks_policy boolean RequiredWhether pull requests targeting a matching branch must be tested with the latest code. This setting will not take effect unless at least one status check is enabled.
non_fast_forward object RequiredPrevent users with push access from force pushing to branches.
Properties of non_fast_forward
| Name, Type, Description |
|---|
type string RequiredValue: |
commit_message_pattern object RequiredParameters to be used for the commit_message_pattern rule
Properties of commit_message_pattern
| Name, Type, Description | |||||
|---|---|---|---|---|---|
type string RequiredValue: | |||||
parameters object | |||||
Properties of |
| Name, Type, Description |
|---|
name string How this rule will appear to users. |
negate boolean If true, the rule will fail if the pattern matches. |
operator string RequiredThe operator to use for matching. Can be one of: |
pattern string RequiredThe pattern to match with. |
commit_author_email_pattern object RequiredParameters to be used for the commit_author_email_pattern rule
| Name, Type, Description | |||||
|---|---|---|---|---|---|
type string RequiredValue: | |||||
parameters object | |||||
Properties of |
| Name, Type, Description |
|---|
name string How this rule will appear to users. |
negate boolean If true, the rule will fail if the pattern matches. |
operator string RequiredThe operator to use for matching. Can be one of: |
pattern string RequiredThe pattern to match with. |
committer_email_pattern object RequiredParameters to be used for the committer_email_pattern rule
Properties of committer_email_pattern
| Name, Type, Description | |||||
|---|---|---|---|---|---|
type string RequiredValue: | |||||
parameters object | |||||
Properties of |
| Name, Type, Description |
|---|
name string How this rule will appear to users. |
negate boolean If true, the rule will fail if the pattern matches. |
operator string RequiredThe operator to use for matching. Can be one of: |
pattern string RequiredThe pattern to match with. |
branch_name_pattern object RequiredParameters to be used for the branch_name_pattern rule
Properties of branch_name_pattern
| Name, Type, Description | |||||
|---|---|---|---|---|---|
type string RequiredValue: | |||||
parameters object | |||||
Properties of |
| Name, Type, Description |
|---|
name string How this rule will appear to users. |
negate boolean If true, the rule will fail if the pattern matches. |
operator string RequiredThe operator to use for matching. Can be one of: |
pattern string RequiredThe pattern to match with. |
tag_name_pattern object RequiredParameters to be used for the tag_name_pattern rule
Properties of tag_name_pattern
| Name, Type, Description | |||||
|---|---|---|---|---|---|
type string RequiredValue: | |||||
parameters object | |||||
Properties of |
| Name, Type, Description |
|---|
name string How this rule will appear to users. |
negate boolean If true, the rule will fail if the pattern matches. |
operator string RequiredThe operator to use for matching. Can be one of: |
pattern string RequiredThe pattern to match with. |
HTTP response status codes for "Update a repository ruleset"
| Status code | Description |
|---|---|
200 | OK |
404 | Resource not found |
500 | Internal Error |
Code samples for "Update a repository ruleset"
curl -L \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/rulesets/RULESET_ID \
-d '{"name":"super cool ruleset","target":"branch","enforcement":"active","bypass_actors":[{"actor_id":234,"actor_type":"Team","bypass_mode":"always"}],"conditions":{"ref_name":{"include":["refs/heads/main","refs/heads/master"],"exclude":["refs/heads/dev*"]}},"rules":[{"type":"commit_author_email_pattern","parameters":{"operator":"contains","pattern":"github"}}]}'Response
Status: 200{
"id": 42,
"name": "super cool ruleset",
"target": "branch",
"source_type": "Repository",
"source": "monalisa/my-repo",
"enforcement": "active",
"bypass_actors": [
{
"actor_id": 234,
"actor_type": "Team",
"bypass_mode": "always"
}
],
"conditions": {
"ref_name": {
"include": [
"refs/heads/main",
"refs/heads/master"
],
"exclude": [
"refs/heads/dev*"
]
}
},
"rules": [
{
"type": "commit_author_email_pattern",
"parameters": {
"operator": "contains",
"pattern": "github"
}
}
],
"node_id": "RRS_lACkVXNlcgQB",
"_links": {
"self": {
"href": "https://api.github.com/repos/monalisa/my-repo/rulesets/42"
},
"html": {
"href": "https://github.com/monalisa/my-repo/rules/42"
}
},
"created_at": "2023-07-15T08:43:03Z",
"updated_at": "2023-08-23T16:29:47Z"
}Delete a repository ruleset
Delete a ruleset for a repository.
Parameters for "Delete a repository ruleset"
| Name, Type, Description |
|---|
accept string Setting to |
| Name, Type, Description |
|---|
owner string RequiredThe account owner of the repository. The name is not case sensitive. |
repo string RequiredThe name of the repository without the |
ruleset_id integer RequiredThe ID of the ruleset. |
HTTP response status codes for "Delete a repository ruleset"
| Status code | Description |
|---|---|
204 | No Content |
404 | Resource not found |
500 | Internal Error |
Code samples for "Delete a repository ruleset"
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/OWNER/REPO/rulesets/RULESET_IDResponse
Status: 204