{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/github/refs/heads/main/json-schema/github-notifications-webhook-branch-protection-rule-edited-schema.json", "title": "webhook-branch-protection-rule-edited", "description": "webhook-branch-protection-rule-edited from GitHub API", "type": "object", "properties": { "action": { "type": "string", "enum": [ "edited" ], "example": "edited" }, "changes": { "description": "If the action was `edited`, the changes to the rule.", "type": "object", "properties": { "admin_enforced": { "type": "object", "properties": { "from": { "type": "boolean", "nullable": true } }, "required": [ "from" ] }, "authorized_actor_names": { "type": "object", "properties": { "from": { "type": "array", "items": { "type": "string" } } }, "required": [ "from" ] }, "authorized_actors_only": { "type": "object", "properties": { "from": { "type": "boolean", "nullable": true } }, "required": [ "from" ] }, "authorized_dismissal_actors_only": { "type": "object", "properties": { "from": { "type": "boolean", "nullable": true } }, "required": [ "from" ] }, "linear_history_requirement_enforcement_level": { "type": "object", "properties": { "from": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] } }, "required": [ "from" ] }, "required_status_checks": { "type": "object", "properties": { "from": { "type": "array", "items": { "type": "string" } } }, "required": [ "from" ] }, "required_status_checks_enforcement_level": { "type": "object", "properties": { "from": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] } }, "required": [ "from" ] } } }, "enterprise": { "$ref": "#/components/schemas/enterprise-webhooks" }, "installation": { "$ref": "#/components/schemas/simple-installation" }, "organization": { "$ref": "#/components/schemas/organization-simple-webhooks" }, "repository": { "$ref": "#/components/schemas/repository-webhooks" }, "rule": { "title": "branch protection rule", "description": "The branch protection rule. Includes a `name` and all the [branch protection settings](https://docs.github.com/enterprise-server@3.9/github/administering-a-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#about-branch-protection-settings) applied to branches that match the name. Binary settings are boolean. Multi-level configurations are one of `off`, `non_admins`, or `everyone`. Actor and build lists are arrays of strings.", "type": "object", "properties": { "admin_enforced": { "type": "boolean" }, "allow_deletions_enforcement_level": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] }, "allow_force_pushes_enforcement_level": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] }, "authorized_actor_names": { "type": "array", "items": { "type": "string" } }, "authorized_actors_only": { "type": "boolean" }, "authorized_dismissal_actors_only": { "type": "boolean" }, "create_protected": { "type": "boolean" }, "created_at": { "type": "string", "format": "date-time" }, "dismiss_stale_reviews_on_push": { "type": "boolean" }, "id": { "type": "integer" }, "ignore_approvals_from_contributors": { "type": "boolean" }, "linear_history_requirement_enforcement_level": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] }, "merge_queue_enforcement_level": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] }, "name": { "type": "string" }, "pull_request_reviews_enforcement_level": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] }, "repository_id": { "type": "integer" }, "require_code_owner_review": { "type": "boolean" }, "required_approving_review_count": { "type": "integer" }, "required_conversation_resolution_level": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] }, "required_deployments_enforcement_level": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] }, "required_status_checks": { "type": "array", "items": { "type": "string" } }, "required_status_checks_enforcement_level": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] }, "signature_requirement_enforcement_level": { "type": "string", "enum": [ "off", "non_admins", "everyone" ] }, "strict_required_status_checks_policy": { "type": "boolean" }, "updated_at": { "type": "string", "format": "date-time" } }, "required": [ "id", "repository_id", "name", "created_at", "updated_at", "pull_request_reviews_enforcement_level", "required_approving_review_count", "dismiss_stale_reviews_on_push", "require_code_owner_review", "authorized_dismissal_actors_only", "ignore_approvals_from_contributors", "required_status_checks", "required_status_checks_enforcement_level", "strict_required_status_checks_policy", "signature_requirement_enforcement_level", "linear_history_requirement_enforcement_level", "admin_enforced", "allow_force_pushes_enforcement_level", "allow_deletions_enforcement_level", "merge_queue_enforcement_level", "required_deployments_enforcement_level", "required_conversation_resolution_level", "authorized_actors_only", "authorized_actor_names" ] }, "sender": { "$ref": "#/components/schemas/simple-user-webhooks" } }, "required": [ "action", "rule", "repository", "sender" ] }