{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/github/main/json-schema/github-check-suite-schema.json", "title": "CheckSuite", "description": "A suite of checks performed on the code of a given code change", "x-generated": "2026-10-03", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/github-checks-api-openapi.yml#/components/schemas/check-suite", "type": "object", "properties": { "id": { "type": "integer" }, "node_id": { "type": "string" }, "head_branch": { "type": [ "string", "null" ] }, "head_sha": { "description": "The SHA of the head commit that is being checked.", "type": "string" }, "status": { "type": [ "string", "null" ], "enum": [ "queued", "in_progress", "completed" ] }, "conclusion": { "type": [ "string", "null" ], "enum": [ "success", "failure", "neutral", "cancelled", "skipped", "timed_out", "action_required", "startup_failure", "stale", null ] }, "url": { "type": [ "string", "null" ] }, "before": { "type": [ "string", "null" ] }, "after": { "type": [ "string", "null" ] }, "pull_requests": { "type": [ "array", "null" ], "items": { "$ref": "#/$defs/pull-request-minimal" } }, "app": { "$ref": "#/$defs/nullable-integration" }, "repository": { "$ref": "#/$defs/minimal-repository" }, "created_at": { "type": [ "string", "null" ], "format": "date-time" }, "updated_at": { "type": [ "string", "null" ], "format": "date-time" }, "head_commit": { "$ref": "#/$defs/simple-commit" }, "latest_check_runs_count": { "type": "integer" }, "check_runs_url": { "type": "string" }, "rerequestable": { "type": "boolean" }, "runs_rerequestable": { "type": "boolean" } }, "required": [ "id", "node_id", "head_branch", "status", "conclusion", "head_sha", "url", "before", "after", "created_at", "updated_at", "app", "head_commit", "repository", "latest_check_runs_count", "check_runs_url", "pull_requests" ], "$defs": { "code-of-conduct": { "title": "Code Of Conduct", "description": "Code Of Conduct", "type": "object", "properties": { "key": { "type": "string" }, "name": { "type": "string" }, "url": { "type": "string", "format": "uri" }, "body": { "type": "string" }, "html_url": { "type": [ "string", "null" ], "format": "uri" } }, "required": [ "url", "html_url", "key", "name" ] }, "minimal-repository": { "title": "Minimal Repository", "description": "Minimal Repository", "type": "object", "properties": { "id": { "type": "integer" }, "node_id": { "type": "string" }, "name": { "type": "string" }, "full_name": { "type": "string" }, "owner": { "$ref": "#/$defs/simple-user" }, "private": { "type": "boolean" }, "html_url": { "type": "string", "format": "uri" }, "description": { "type": [ "string", "null" ] }, "fork": { "type": "boolean" }, "url": { "type": "string", "format": "uri" }, "archive_url": { "type": "string" }, "assignees_url": { "type": "string" }, "blobs_url": { "type": "string" }, "branches_url": { "type": "string" }, "collaborators_url": { "type": "string" }, "comments_url": { "type": "string" }, "commits_url": { "type": "string" }, "compare_url": { "type": "string" }, "contents_url": { "type": "string" }, "contributors_url": { "type": "string", "format": "uri" }, "deployments_url": { "type": "string", "format": "uri" }, "downloads_url": { "type": "string", "format": "uri" }, "events_url": { "type": "string", "format": "uri" }, "forks_url": { "type": "string", "format": "uri" }, "git_commits_url": { "type": "string" }, "git_refs_url": { "type": "string" }, "git_tags_url": { "type": "string" }, "git_url": { "type": "string" }, "issue_comment_url": { "type": "string" }, "issue_events_url": { "type": "string" }, "issues_url": { "type": "string" }, "keys_url": { "type": "string" }, "labels_url": { "type": "string" }, "languages_url": { "type": "string", "format": "uri" }, "merges_url": { "type": "string", "format": "uri" }, "milestones_url": { "type": "string" }, "notifications_url": { "type": "string" }, "pulls_url": { "type": "string" }, "releases_url": { "type": "string" }, "ssh_url": { "type": "string" }, "stargazers_url": { "type": "string", "format": "uri" }, "statuses_url": { "type": "string" }, "subscribers_url": { "type": "string", "format": "uri" }, "subscription_url": { "type": "string", "format": "uri" }, "tags_url": { "type": "string", "format": "uri" }, "teams_url": { "type": "string", "format": "uri" }, "trees_url": { "type": "string" }, "clone_url": { "type": "string" }, "mirror_url": { "type": [ "string", "null" ] }, "hooks_url": { "type": "string", "format": "uri" }, "svn_url": { "type": "string" }, "homepage": { "type": [ "string", "null" ] }, "language": { "type": [ "string", "null" ] }, "forks_count": { "type": "integer" }, "stargazers_count": { "type": "integer" }, "watchers_count": { "type": "integer" }, "size": { "description": "The size of the repository, in kilobytes. Size is calculated hourly. When a repository is initially created, the size is 0.", "type": "integer" }, "default_branch": { "type": "string" }, "open_issues_count": { "type": "integer" }, "is_template": { "type": "boolean" }, "topics": { "type": "array", "items": { "type": "string" } }, "has_issues": { "type": "boolean" }, "has_projects": { "type": "boolean" }, "has_wiki": { "type": "boolean" }, "has_pages": { "type": "boolean" }, "has_downloads": { "type": "boolean" }, "has_discussions": { "type": "boolean" }, "archived": { "type": "boolean" }, "disabled": { "type": "boolean" }, "visibility": { "type": "string" }, "pushed_at": { "type": [ "string", "null" ], "format": "date-time" }, "created_at": { "type": [ "string", "null" ], "format": "date-time" }, "updated_at": { "type": [ "string", "null" ], "format": "date-time" }, "permissions": { "type": "object", "properties": { "admin": { "type": "boolean" }, "maintain": { "type": "boolean" }, "push": { "type": "boolean" }, "triage": { "type": "boolean" }, "pull": { "type": "boolean" } } }, "role_name": { "type": "string" }, "temp_clone_token": { "type": "string" }, "delete_branch_on_merge": { "type": "boolean" }, "subscribers_count": { "type": "integer" }, "network_count": { "type": "integer" }, "code_of_conduct": { "$ref": "#/$defs/code-of-conduct" }, "license": { "type": [ "object", "null" ], "properties": { "key": { "type": "string" }, "name": { "type": "string" }, "spdx_id": { "type": "string" }, "url": { "type": "string" }, "node_id": { "type": "string" } } }, "forks": { "type": "integer" }, "open_issues": { "type": "integer" }, "watchers": { "type": "integer" }, "allow_forking": { "type": "boolean" }, "web_commit_signoff_required": { "type": "boolean" }, "security_and_analysis": { "$ref": "#/$defs/security-and-analysis" } }, "required": [ "archive_url", "assignees_url", "blobs_url", "branches_url", "collaborators_url", "comments_url", "commits_url", "compare_url", "contents_url", "contributors_url", "deployments_url", "description", "downloads_url", "events_url", "fork", "forks_url", "full_name", "git_commits_url", "git_refs_url", "git_tags_url", "hooks_url", "html_url", "id", "node_id", "issue_comment_url", "issue_events_url", "issues_url", "keys_url", "labels_url", "languages_url", "merges_url", "milestones_url", "name", "notifications_url", "owner", "private", "pulls_url", "releases_url", "stargazers_url", "statuses_url", "subscribers_url", "subscription_url", "tags_url", "teams_url", "trees_url", "url" ] }, "nullable-integration": { "title": "GitHub app", "description": "GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.", "type": [ "object", "null" ], "properties": { "id": { "description": "Unique identifier of the GitHub app", "type": "integer" }, "slug": { "description": "The slug name of the GitHub app", "type": "string" }, "node_id": { "type": "string" }, "owner": { "$ref": "#/$defs/nullable-simple-user" }, "name": { "description": "The name of the GitHub app", "type": "string" }, "description": { "type": [ "string", "null" ] }, "external_url": { "type": "string", "format": "uri" }, "html_url": { "type": "string", "format": "uri" }, "created_at": { "type": "string", "format": "date-time" }, "updated_at": { "type": "string", "format": "date-time" }, "permissions": { "description": "The set of permissions for the GitHub app", "type": "object", "properties": { "issues": { "type": "string" }, "checks": { "type": "string" }, "metadata": { "type": "string" }, "contents": { "type": "string" }, "deployments": { "type": "string" } }, "additionalProperties": { "type": "string" } }, "events": { "description": "The list of events for the GitHub app", "type": "array", "items": { "type": "string" } }, "installations_count": { "description": "The number of installations associated with the GitHub app", "type": "integer" }, "client_id": { "type": "string" }, "client_secret": { "type": "string" }, "webhook_secret": { "type": [ "string", "null" ] }, "pem": { "type": "string" } }, "required": [ "id", "node_id", "owner", "name", "description", "external_url", "html_url", "created_at", "updated_at", "permissions", "events" ] }, "nullable-simple-user": { "title": "Simple User", "description": "A GitHub user.", "type": [ "object", "null" ], "properties": { "name": { "type": [ "string", "null" ] }, "email": { "type": [ "string", "null" ] }, "login": { "type": "string" }, "id": { "type": "integer" }, "node_id": { "type": "string" }, "avatar_url": { "type": "string", "format": "uri" }, "gravatar_id": { "type": [ "string", "null" ] }, "url": { "type": "string", "format": "uri" }, "html_url": { "type": "string", "format": "uri" }, "followers_url": { "type": "string", "format": "uri" }, "following_url": { "type": "string" }, "gists_url": { "type": "string" }, "starred_url": { "type": "string" }, "subscriptions_url": { "type": "string", "format": "uri" }, "organizations_url": { "type": "string", "format": "uri" }, "repos_url": { "type": "string", "format": "uri" }, "events_url": { "type": "string" }, "received_events_url": { "type": "string", "format": "uri" }, "type": { "type": "string" }, "site_admin": { "type": "boolean" }, "starred_at": { "type": "string" } }, "required": [ "avatar_url", "events_url", "followers_url", "following_url", "gists_url", "gravatar_id", "html_url", "id", "node_id", "login", "organizations_url", "received_events_url", "repos_url", "site_admin", "starred_url", "subscriptions_url", "type", "url" ] }, "pull-request-minimal": { "title": "Pull Request Minimal", "type": "object", "properties": { "id": { "type": "integer" }, "number": { "type": "integer" }, "url": { "type": "string" }, "head": { "type": "object", "properties": { "ref": { "type": "string" }, "sha": { "type": "string" }, "repo": { "type": "object", "properties": { "id": { "type": "integer" }, "url": { "type": "string" }, "name": { "type": "string" } }, "required": [ "id", "url", "name" ] } }, "required": [ "ref", "sha", "repo" ] }, "base": { "type": "object", "properties": { "ref": { "type": "string" }, "sha": { "type": "string" }, "repo": { "type": "object", "properties": { "id": { "type": "integer" }, "url": { "type": "string" }, "name": { "type": "string" } }, "required": [ "id", "url", "name" ] } }, "required": [ "ref", "sha", "repo" ] } }, "required": [ "id", "number", "url", "head", "base" ] }, "security-and-analysis": { "type": [ "object", "null" ], "properties": { "advanced_security": { "type": "object", "properties": { "status": { "type": "string", "enum": [ "enabled", "disabled" ] } } }, "secret_scanning": { "type": "object", "properties": { "status": { "type": "string", "enum": [ "enabled", "disabled" ] } } }, "secret_scanning_push_protection": { "type": "object", "properties": { "status": { "type": "string", "enum": [ "enabled", "disabled" ] } } } } }, "simple-commit": { "title": "Simple Commit", "description": "A commit.", "type": "object", "properties": { "id": { "type": "string", "description": "SHA for the commit" }, "tree_id": { "type": "string", "description": "SHA for the commit's tree" }, "message": { "description": "Message describing the purpose of the commit", "type": "string" }, "timestamp": { "description": "Timestamp of the commit", "format": "date-time", "type": "string" }, "author": { "type": [ "object", "null" ], "description": "Information about the Git author", "properties": { "name": { "description": "Name of the commit's author", "type": "string" }, "email": { "description": "Git email address of the commit's author", "type": "string", "format": "email" } }, "required": [ "name", "email" ] }, "committer": { "type": [ "object", "null" ], "description": "Information about the Git committer", "properties": { "name": { "description": "Name of the commit's committer", "type": "string" }, "email": { "description": "Git email address of the commit's committer", "type": "string", "format": "email" } }, "required": [ "name", "email" ] } }, "required": [ "id", "tree_id", "message", "timestamp", "author", "committer" ] }, "simple-user": { "title": "Simple User", "description": "A GitHub user.", "type": "object", "properties": { "name": { "type": [ "string", "null" ] }, "email": { "type": [ "string", "null" ] }, "login": { "type": "string" }, "id": { "type": "integer" }, "node_id": { "type": "string" }, "avatar_url": { "type": "string", "format": "uri" }, "gravatar_id": { "type": [ "string", "null" ] }, "url": { "type": "string", "format": "uri" }, "html_url": { "type": "string", "format": "uri" }, "followers_url": { "type": "string", "format": "uri" }, "following_url": { "type": "string" }, "gists_url": { "type": "string" }, "starred_url": { "type": "string" }, "subscriptions_url": { "type": "string", "format": "uri" }, "organizations_url": { "type": "string", "format": "uri" }, "repos_url": { "type": "string", "format": "uri" }, "events_url": { "type": "string" }, "received_events_url": { "type": "string", "format": "uri" }, "type": { "type": "string" }, "site_admin": { "type": "boolean" }, "starred_at": { "type": "string" } }, "required": [ "avatar_url", "events_url", "followers_url", "following_url", "gists_url", "gravatar_id", "html_url", "id", "node_id", "login", "organizations_url", "received_events_url", "repos_url", "site_admin", "starred_url", "subscriptions_url", "type", "url" ] } } }