diff --git a/descriptions-next/api.github.com/api.github.com.2022-11-28.json b/descriptions-next/api.github.com/api.github.com.2022-11-28.json index 33de030c27..25179559ee 100644 --- a/descriptions-next/api.github.com/api.github.com.2022-11-28.json +++ b/descriptions-next/api.github.com/api.github.com.2022-11-28.json @@ -75965,6 +75965,1285 @@ } } }, + "/repos/{owner}/{repo}/stacks": { + "get": { + "summary": "List pull request stacks", + "description": "Lists pull request stacks in a repository.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/list", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "pull_request", + "description": "Filter to the stack containing this repository pull request number.", + "in": "query", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "$ref": "#/components/parameters/per-page" + }, + { + "$ref": "#/components/parameters/page" + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-minimal" + } + }, + "examples": { + "default": { + "value": [ + { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "pull_requests": [ + { + "number": 101, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11" + } + }, + { + "number": 102, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22" + } + } + ], + "open": true, + "created_at": "2026-04-15T10:00:00Z" + } + ] + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "422": { + "$ref": "#/components/responses/validation_failed" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + }, + "post": { + "summary": "Create a pull request stack", + "description": "Creates a stack from an ordered list of pull request numbers. Provide the pull\nrequest numbers from the bottom of the stack to the top. Each pull request's\nbase ref must match the previous pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/create", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers forming the stack from bottom to top.", + "items": { + "type": "integer" + }, + "minItems": 2, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 101, + 102, + 103 + ] + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "422": { + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't form a\nvalid stack.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] + } + } + ] + } + } + } + } + } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 + ] + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't form a linear stack", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}": { + "get": { + "summary": "Get a pull request stack", + "description": "Gets a pull request stack by providing its stack number.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/get", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/add": { + "post": { + "summary": "Add pull requests to a pull request stack", + "description": "Appends an ordered list of pull request numbers onto the top of an existing\nstack. Provide only the pull requests you want to add, from the current top of\nthe stack upward. The first new pull request's base ref must match the current\ntop pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/add", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers to append to the stack, from the current top upward.", + "items": { + "type": "integer" + }, + "minItems": 1, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 104, + 102 + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/basic-error" + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "status": "409" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't be appended\nto the stack.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] + } + } + ] + } + } + } + } + } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 + ] + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't continue the stack linearly", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": { + "post": { + "summary": "Remove pull requests from a pull request stack", + "description": "Removes the unmerged pull requests from a stack. Pull requests that cannot be\nunstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated\nstack is returned with a `200`. When no pull requests remain, the stack is\ndissolved and a `204` is returned.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/unstack", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/basic-error" + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack", + "status": "409" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the stack can't be unstacked because every\npull request in it is locked and cannot be removed.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/validation-error" + }, + "examples": { + "cannot_be_removed": { + "summary": "Every pull request in the stack is locked and can't be removed", + "value": { + "message": "Pull requests in this stack cannot be removed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + } + } + } + } + } + }, + "204": { + "$ref": "#/components/responses/no_content" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, "/repos/{owner}/{repo}/stargazers": { "get": { "summary": "List stargazers", @@ -144744,168 +146023,175 @@ "items": { "$ref": "#/components/schemas/simple-user" } - } - }, - "required": [ - "number", - "created_at", - "url", - "html_url", - "instances_url", - "state", - "dismissed_by", - "dismissed_at", - "dismissed_reason", - "rule", - "tool", - "most_recent_instance" - ] - }, - "code-scanning-alert-rule": { - "type": "object", - "properties": { - "id": { - "type": [ - "string", - "null" - ], - "description": "A unique identifier for the rule used to detect the alert." - }, - "name": { - "type": "string", - "description": "The name of the rule used to detect the alert." - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the alert.", - "enum": [ - "none", - "note", - "warning", - "error", - null - ] - }, - "security_severity_level": { - "type": [ - "string", - "null" - ], - "description": "The security severity of the alert.", - "enum": [ - "low", - "medium", - "high", - "critical", - null - ] - }, - "description": { - "type": "string", - "description": "A short description of the rule used to detect the alert." - }, - "full_description": { - "type": "string", - "description": "A description of the rule used to detect the alert." - }, - "tags": { - "type": [ - "array", - "null" - ], - "description": "A set of tags applicable for the rule.", - "items": { - "type": "string" - } + } + }, + "required": [ + "number", + "created_at", + "url", + "html_url", + "instances_url", + "state", + "dismissed_by", + "dismissed_at", + "dismissed_reason", + "rule", + "tool", + "most_recent_instance" + ] + }, + "code-scanning-alert-rule": { + "type": "object", + "properties": { + "id": { + "type": [ + "string", + "null" + ], + "description": "A unique identifier for the rule used to detect the alert." + }, + "name": { + "type": "string", + "description": "The name of the rule used to detect the alert." + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the alert.", + "enum": [ + "none", + "note", + "warning", + "error", + null + ] + }, + "security_severity_level": { + "type": [ + "string", + "null" + ], + "description": "The security severity of the alert.", + "enum": [ + "low", + "medium", + "high", + "critical", + null + ] + }, + "description": { + "type": "string", + "description": "A short description of the rule used to detect the alert." + }, + "full_description": { + "type": "string", + "description": "A description of the rule used to detect the alert." + }, + "tags": { + "type": [ + "array", + "null" + ], + "description": "A set of tags applicable for the rule.", + "items": { + "type": "string" + } + }, + "help": { + "type": [ + "string", + "null" + ], + "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." + } + } + }, + "code-scanning-alert": { + "type": "object", + "properties": { + "number": { + "$ref": "#/components/schemas/alert-number" + }, + "created_at": { + "$ref": "#/components/schemas/alert-created-at" + }, + "updated_at": { + "$ref": "#/components/schemas/alert-updated-at" + }, + "url": { + "$ref": "#/components/schemas/alert-url" + }, + "html_url": { + "$ref": "#/components/schemas/alert-html-url" + }, + "instances_url": { + "$ref": "#/components/schemas/alert-instances-url" + }, + "state": { + "$ref": "#/components/schemas/code-scanning-alert-state" + }, + "fixed_at": { + "$ref": "#/components/schemas/alert-fixed-at" + }, + "dismissed_by": { + "anyOf": [ + { + "type": "null" + }, + { + "$ref": "#/components/schemas/simple-user" + } + ] + }, + "dismissed_at": { + "$ref": "#/components/schemas/alert-dismissed-at" + }, + "dismissed_reason": { + "$ref": "#/components/schemas/code-scanning-alert-dismissed-reason" + }, + "dismissed_comment": { + "$ref": "#/components/schemas/code-scanning-alert-dismissed-comment" + }, + "rule": { + "$ref": "#/components/schemas/code-scanning-alert-rule" + }, + "tool": { + "$ref": "#/components/schemas/code-scanning-analysis-tool" + }, + "most_recent_instance": { + "$ref": "#/components/schemas/code-scanning-alert-instance" + }, + "dismissal_approved_by": { + "anyOf": [ + { + "type": "null" + }, + { + "$ref": "#/components/schemas/simple-user" + } + ] + }, + "assignees": { + "type": "array", + "items": { + "$ref": "#/components/schemas/simple-user" + } }, - "help": { - "type": [ - "string", - "null" - ], - "description": "Detailed documentation for the rule as GitHub Flavored Markdown." - }, - "help_uri": { - "type": [ - "string", - "null" - ], - "description": "A link to the documentation for the rule used to detect the alert." - } - } - }, - "code-scanning-alert": { - "type": "object", - "properties": { - "number": { - "$ref": "#/components/schemas/alert-number" - }, - "created_at": { - "$ref": "#/components/schemas/alert-created-at" - }, - "updated_at": { - "$ref": "#/components/schemas/alert-updated-at" - }, - "url": { - "$ref": "#/components/schemas/alert-url" - }, - "html_url": { - "$ref": "#/components/schemas/alert-html-url" - }, - "instances_url": { - "$ref": "#/components/schemas/alert-instances-url" - }, - "state": { - "$ref": "#/components/schemas/code-scanning-alert-state" - }, - "fixed_at": { - "$ref": "#/components/schemas/alert-fixed-at" - }, - "dismissed_by": { - "anyOf": [ - { - "type": "null" - }, - { - "$ref": "#/components/schemas/simple-user" - } - ] - }, - "dismissed_at": { - "$ref": "#/components/schemas/alert-dismissed-at" - }, - "dismissed_reason": { - "$ref": "#/components/schemas/code-scanning-alert-dismissed-reason" - }, - "dismissed_comment": { - "$ref": "#/components/schemas/code-scanning-alert-dismissed-comment" - }, - "rule": { - "$ref": "#/components/schemas/code-scanning-alert-rule" - }, - "tool": { - "$ref": "#/components/schemas/code-scanning-analysis-tool" - }, - "most_recent_instance": { - "$ref": "#/components/schemas/code-scanning-alert-instance" - }, - "dismissal_approved_by": { - "anyOf": [ - { - "type": "null" - }, - { - "$ref": "#/components/schemas/simple-user" - } - ] - }, - "assignees": { + "linked_pull_requests": { + "description": "Pull requests linked to this alert.", "type": "array", "items": { - "$ref": "#/components/schemas/simple-user" + "$ref": "#/components/schemas/pull-request-simple" } } }, @@ -156800,6 +158086,164 @@ }, "additionalProperties": false }, + "pull-request-stack-minimal": { + "title": "Pull Request Stack Minimal", + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "type": "object", + "required": [ + "number", + "state", + "draft", + "merged_at", + "head" + ], + "properties": { + "number": { + "type": "integer" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "draft": { + "type": "boolean" + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "head": { + "type": "object", + "required": [ + "ref", + "sha" + ], + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + } + } + } + } + } + } + } + }, + "pull-request-stack-pull-request": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/pull-request-minimal" + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "$ref": "#/components/schemas/simple-user" + } + ] + } + } + } + ] + }, "stargazer": { "title": "Stargazer", "description": "Stargazer", diff --git a/descriptions-next/api.github.com/api.github.com.2022-11-28.yaml b/descriptions-next/api.github.com/api.github.com.2022-11-28.yaml index b3209ba8da..6a8ea5dd7c 100644 --- a/descriptions-next/api.github.com/api.github.com.2022-11-28.yaml +++ b/descriptions-next/api.github.com/api.github.com.2022-11-28.yaml @@ -55588,6 +55588,944 @@ paths: enabledForGitHubApps: true category: security-advisories subcategory: repository-advisories + "/repos/{owner}/{repo}/stacks": + get: + summary: List pull request stacks + description: Lists pull request stacks in a repository. + tags: + - pulls + operationId: pull-request-stacks/list + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: pull_request + description: Filter to the stack containing this repository pull request number. + in: query + required: false + schema: + type: integer + - "$ref": "#/components/parameters/per-page" + - "$ref": "#/components/parameters/page" + responses: + '200': + description: Response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-minimal" + examples: + default: + value: + - id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + pull_requests: + - number: 101 + state: open + draft: false + merged_at: + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + - number: 102 + state: open + draft: false + merged_at: + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + open: true + created_at: '2026-04-15T10:00:00Z' + '404': + "$ref": "#/components/responses/not_found" + '422': + "$ref": "#/components/responses/validation_failed" + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + post: + summary: Create a pull request stack + description: |- + Creates a stack from an ordered list of pull request numbers. Provide the pull + request numbers from the bottom of the stack to the top. Each pull request's + base ref must match the previous pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/create + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers forming the + stack from bottom to top. + items: + type: integer + minItems: 2 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 101 + - 102 + - 103 + responses: + '201': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't form a + valid stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't form a linear stack + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}": + get: + summary: Get a pull request stack + description: Gets a pull request stack by providing its stack number. + tags: + - pulls + operationId: pull-request-stacks/get + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/add": + post: + summary: Add pull requests to a pull request stack + description: |- + Appends an ordered list of pull request numbers onto the top of an existing + stack. Provide only the pull requests you want to add, from the current top of + the stack upward. The first new pull request's base ref must match the current + top pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/add + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers to append to + the stack, from the current top upward. + items: + type: integer + minItems: 1 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 104 + - 102 + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: + "$ref": "#/components/schemas/basic-error" + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't be appended + to the stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't continue the stack linearly + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": + post: + summary: Remove pull requests from a pull request stack + description: |- + Removes the unmerged pull requests from a stack. Pull requests that cannot be + unstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated + stack is returned with a `200`. When no pull requests remain, the stack is + dissolved and a `204` is returned. + tags: + - pulls + operationId: pull-request-stacks/unstack + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: + "$ref": "#/components/schemas/basic-error" + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the stack can't be unstacked because every + pull request in it is locked and cannot be removed. + content: + application/json: + schema: + "$ref": "#/components/schemas/validation-error" + examples: + cannot_be_removed: + summary: Every pull request in the stack is locked and can't be + removed + value: + message: Pull requests in this stack cannot be removed + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + '204': + "$ref": "#/components/responses/no_content" + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks "/repos/{owner}/{repo}/stargazers": get: summary: List stargazers @@ -105665,6 +106603,11 @@ components: type: array items: "$ref": "#/components/schemas/simple-user" + linked_pull_requests: + description: Pull requests linked to this alert. + type: array + items: + "$ref": "#/components/schemas/pull-request-simple" required: - number - created_at @@ -113978,6 +114921,115 @@ components: items: type: string additionalProperties: false + pull-request-stack-minimal: + title: Pull Request Stack Minimal + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False when all + pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + type: object + required: + - number + - state + - draft + - merged_at + - head + properties: + number: + type: integer + state: + type: string + enum: + - open + - closed + draft: + type: boolean + merged_at: + type: + - string + - 'null' + format: date-time + head: + type: object + required: + - ref + - sha + properties: + ref: + type: string + sha: + type: string + pull-request-stack-pull-request: + title: Pull Request Stack Pull Request + type: object + allOf: + - "$ref": "#/components/schemas/pull-request-minimal" + - type: object + required: + - node_id + - title + - state + - merged_at + - draft + - html_url + - user + properties: + node_id: + type: string + title: + type: string + state: + type: string + enum: + - open + - closed + merged_at: + type: + - string + - 'null' + format: date-time + draft: + type: boolean + html_url: + type: string + format: uri + user: + anyOf: + - type: 'null' + - "$ref": "#/components/schemas/simple-user" stargazer: title: Stargazer description: Stargazer diff --git a/descriptions-next/api.github.com/api.github.com.2026-03-10.json b/descriptions-next/api.github.com/api.github.com.2026-03-10.json index da0d95106a..6e76e12813 100644 --- a/descriptions-next/api.github.com/api.github.com.2026-03-10.json +++ b/descriptions-next/api.github.com/api.github.com.2026-03-10.json @@ -75876,6 +75876,1285 @@ } } }, + "/repos/{owner}/{repo}/stacks": { + "get": { + "summary": "List pull request stacks", + "description": "Lists pull request stacks in a repository.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/list", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "pull_request", + "description": "Filter to the stack containing this repository pull request number.", + "in": "query", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "$ref": "#/components/parameters/per-page" + }, + { + "$ref": "#/components/parameters/page" + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-minimal" + } + }, + "examples": { + "default": { + "value": [ + { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "pull_requests": [ + { + "number": 101, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11" + } + }, + { + "number": 102, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22" + } + } + ], + "open": true, + "created_at": "2026-04-15T10:00:00Z" + } + ] + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "422": { + "$ref": "#/components/responses/validation_failed" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + }, + "post": { + "summary": "Create a pull request stack", + "description": "Creates a stack from an ordered list of pull request numbers. Provide the pull\nrequest numbers from the bottom of the stack to the top. Each pull request's\nbase ref must match the previous pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/create", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers forming the stack from bottom to top.", + "items": { + "type": "integer" + }, + "minItems": 2, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 101, + 102, + 103 + ] + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "422": { + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't form a\nvalid stack.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] + } + } + ] + } + } + } + } + } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 + ] + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't form a linear stack", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}": { + "get": { + "summary": "Get a pull request stack", + "description": "Gets a pull request stack by providing its stack number.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/get", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/add": { + "post": { + "summary": "Add pull requests to a pull request stack", + "description": "Appends an ordered list of pull request numbers onto the top of an existing\nstack. Provide only the pull requests you want to add, from the current top of\nthe stack upward. The first new pull request's base ref must match the current\ntop pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/add", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers to append to the stack, from the current top upward.", + "items": { + "type": "integer" + }, + "minItems": 1, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 104, + 102 + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/basic-error" + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "status": "409" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't be appended\nto the stack.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] + } + } + ] + } + } + } + } + } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 + ] + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't continue the stack linearly", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": { + "post": { + "summary": "Remove pull requests from a pull request stack", + "description": "Removes the unmerged pull requests from a stack. Pull requests that cannot be\nunstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated\nstack is returned with a `200`. When no pull requests remain, the stack is\ndissolved and a `204` is returned.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/unstack", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/basic-error" + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack", + "status": "409" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the stack can't be unstacked because every\npull request in it is locked and cannot be removed.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/validation-error" + }, + "examples": { + "cannot_be_removed": { + "summary": "Every pull request in the stack is locked and can't be removed", + "value": { + "message": "Pull requests in this stack cannot be removed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + } + } + } + } + } + }, + "204": { + "$ref": "#/components/responses/no_content" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, "/repos/{owner}/{repo}/stargazers": { "get": { "summary": "List stargazers", @@ -144104,168 +145383,175 @@ "items": { "$ref": "#/components/schemas/simple-user" } - } - }, - "required": [ - "number", - "created_at", - "url", - "html_url", - "instances_url", - "state", - "dismissed_by", - "dismissed_at", - "dismissed_reason", - "rule", - "tool", - "most_recent_instance" - ] - }, - "code-scanning-alert-rule": { - "type": "object", - "properties": { - "id": { - "type": [ - "string", - "null" - ], - "description": "A unique identifier for the rule used to detect the alert." - }, - "name": { - "type": "string", - "description": "The name of the rule used to detect the alert." - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the alert.", - "enum": [ - "none", - "note", - "warning", - "error", - null - ] - }, - "security_severity_level": { - "type": [ - "string", - "null" - ], - "description": "The security severity of the alert.", - "enum": [ - "low", - "medium", - "high", - "critical", - null - ] - }, - "description": { - "type": "string", - "description": "A short description of the rule used to detect the alert." - }, - "full_description": { - "type": "string", - "description": "A description of the rule used to detect the alert." - }, - "tags": { - "type": [ - "array", - "null" - ], - "description": "A set of tags applicable for the rule.", - "items": { - "type": "string" - } + } + }, + "required": [ + "number", + "created_at", + "url", + "html_url", + "instances_url", + "state", + "dismissed_by", + "dismissed_at", + "dismissed_reason", + "rule", + "tool", + "most_recent_instance" + ] + }, + "code-scanning-alert-rule": { + "type": "object", + "properties": { + "id": { + "type": [ + "string", + "null" + ], + "description": "A unique identifier for the rule used to detect the alert." + }, + "name": { + "type": "string", + "description": "The name of the rule used to detect the alert." + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the alert.", + "enum": [ + "none", + "note", + "warning", + "error", + null + ] + }, + "security_severity_level": { + "type": [ + "string", + "null" + ], + "description": "The security severity of the alert.", + "enum": [ + "low", + "medium", + "high", + "critical", + null + ] + }, + "description": { + "type": "string", + "description": "A short description of the rule used to detect the alert." + }, + "full_description": { + "type": "string", + "description": "A description of the rule used to detect the alert." + }, + "tags": { + "type": [ + "array", + "null" + ], + "description": "A set of tags applicable for the rule.", + "items": { + "type": "string" + } + }, + "help": { + "type": [ + "string", + "null" + ], + "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." + } + } + }, + "code-scanning-alert": { + "type": "object", + "properties": { + "number": { + "$ref": "#/components/schemas/alert-number" + }, + "created_at": { + "$ref": "#/components/schemas/alert-created-at" + }, + "updated_at": { + "$ref": "#/components/schemas/alert-updated-at" + }, + "url": { + "$ref": "#/components/schemas/alert-url" + }, + "html_url": { + "$ref": "#/components/schemas/alert-html-url" + }, + "instances_url": { + "$ref": "#/components/schemas/alert-instances-url" + }, + "state": { + "$ref": "#/components/schemas/code-scanning-alert-state" + }, + "fixed_at": { + "$ref": "#/components/schemas/alert-fixed-at" + }, + "dismissed_by": { + "anyOf": [ + { + "type": "null" + }, + { + "$ref": "#/components/schemas/simple-user" + } + ] + }, + "dismissed_at": { + "$ref": "#/components/schemas/alert-dismissed-at" + }, + "dismissed_reason": { + "$ref": "#/components/schemas/code-scanning-alert-dismissed-reason" + }, + "dismissed_comment": { + "$ref": "#/components/schemas/code-scanning-alert-dismissed-comment" + }, + "rule": { + "$ref": "#/components/schemas/code-scanning-alert-rule" + }, + "tool": { + "$ref": "#/components/schemas/code-scanning-analysis-tool" + }, + "most_recent_instance": { + "$ref": "#/components/schemas/code-scanning-alert-instance" + }, + "dismissal_approved_by": { + "anyOf": [ + { + "type": "null" + }, + { + "$ref": "#/components/schemas/simple-user" + } + ] + }, + "assignees": { + "type": "array", + "items": { + "$ref": "#/components/schemas/simple-user" + } }, - "help": { - "type": [ - "string", - "null" - ], - "description": "Detailed documentation for the rule as GitHub Flavored Markdown." - }, - "help_uri": { - "type": [ - "string", - "null" - ], - "description": "A link to the documentation for the rule used to detect the alert." - } - } - }, - "code-scanning-alert": { - "type": "object", - "properties": { - "number": { - "$ref": "#/components/schemas/alert-number" - }, - "created_at": { - "$ref": "#/components/schemas/alert-created-at" - }, - "updated_at": { - "$ref": "#/components/schemas/alert-updated-at" - }, - "url": { - "$ref": "#/components/schemas/alert-url" - }, - "html_url": { - "$ref": "#/components/schemas/alert-html-url" - }, - "instances_url": { - "$ref": "#/components/schemas/alert-instances-url" - }, - "state": { - "$ref": "#/components/schemas/code-scanning-alert-state" - }, - "fixed_at": { - "$ref": "#/components/schemas/alert-fixed-at" - }, - "dismissed_by": { - "anyOf": [ - { - "type": "null" - }, - { - "$ref": "#/components/schemas/simple-user" - } - ] - }, - "dismissed_at": { - "$ref": "#/components/schemas/alert-dismissed-at" - }, - "dismissed_reason": { - "$ref": "#/components/schemas/code-scanning-alert-dismissed-reason" - }, - "dismissed_comment": { - "$ref": "#/components/schemas/code-scanning-alert-dismissed-comment" - }, - "rule": { - "$ref": "#/components/schemas/code-scanning-alert-rule" - }, - "tool": { - "$ref": "#/components/schemas/code-scanning-analysis-tool" - }, - "most_recent_instance": { - "$ref": "#/components/schemas/code-scanning-alert-instance" - }, - "dismissal_approved_by": { - "anyOf": [ - { - "type": "null" - }, - { - "$ref": "#/components/schemas/simple-user" - } - ] - }, - "assignees": { + "linked_pull_requests": { + "description": "Pull requests linked to this alert.", "type": "array", "items": { - "$ref": "#/components/schemas/simple-user" + "$ref": "#/components/schemas/pull-request-simple" } } }, @@ -156137,6 +157423,164 @@ }, "additionalProperties": false }, + "pull-request-stack-minimal": { + "title": "Pull Request Stack Minimal", + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "type": "object", + "required": [ + "number", + "state", + "draft", + "merged_at", + "head" + ], + "properties": { + "number": { + "type": "integer" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "draft": { + "type": "boolean" + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "head": { + "type": "object", + "required": [ + "ref", + "sha" + ], + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + } + } + } + } + } + } + } + }, + "pull-request-stack-pull-request": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/pull-request-minimal" + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "$ref": "#/components/schemas/simple-user" + } + ] + } + } + } + ] + }, "stargazer": { "title": "Stargazer", "description": "Stargazer", diff --git a/descriptions-next/api.github.com/api.github.com.2026-03-10.yaml b/descriptions-next/api.github.com/api.github.com.2026-03-10.yaml index 8f59533fb1..4a8c60c54d 100644 --- a/descriptions-next/api.github.com/api.github.com.2026-03-10.yaml +++ b/descriptions-next/api.github.com/api.github.com.2026-03-10.yaml @@ -55513,6 +55513,944 @@ paths: enabledForGitHubApps: true category: security-advisories subcategory: repository-advisories + "/repos/{owner}/{repo}/stacks": + get: + summary: List pull request stacks + description: Lists pull request stacks in a repository. + tags: + - pulls + operationId: pull-request-stacks/list + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: pull_request + description: Filter to the stack containing this repository pull request number. + in: query + required: false + schema: + type: integer + - "$ref": "#/components/parameters/per-page" + - "$ref": "#/components/parameters/page" + responses: + '200': + description: Response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-minimal" + examples: + default: + value: + - id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + pull_requests: + - number: 101 + state: open + draft: false + merged_at: + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + - number: 102 + state: open + draft: false + merged_at: + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + open: true + created_at: '2026-04-15T10:00:00Z' + '404': + "$ref": "#/components/responses/not_found" + '422': + "$ref": "#/components/responses/validation_failed" + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + post: + summary: Create a pull request stack + description: |- + Creates a stack from an ordered list of pull request numbers. Provide the pull + request numbers from the bottom of the stack to the top. Each pull request's + base ref must match the previous pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/create + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers forming the + stack from bottom to top. + items: + type: integer + minItems: 2 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 101 + - 102 + - 103 + responses: + '201': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't form a + valid stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't form a linear stack + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}": + get: + summary: Get a pull request stack + description: Gets a pull request stack by providing its stack number. + tags: + - pulls + operationId: pull-request-stacks/get + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/add": + post: + summary: Add pull requests to a pull request stack + description: |- + Appends an ordered list of pull request numbers onto the top of an existing + stack. Provide only the pull requests you want to add, from the current top of + the stack upward. The first new pull request's base ref must match the current + top pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/add + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers to append to + the stack, from the current top upward. + items: + type: integer + minItems: 1 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 104 + - 102 + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: + "$ref": "#/components/schemas/basic-error" + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't be appended + to the stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't continue the stack linearly + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": + post: + summary: Remove pull requests from a pull request stack + description: |- + Removes the unmerged pull requests from a stack. Pull requests that cannot be + unstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated + stack is returned with a `200`. When no pull requests remain, the stack is + dissolved and a `204` is returned. + tags: + - pulls + operationId: pull-request-stacks/unstack + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: + "$ref": "#/components/schemas/basic-error" + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the stack can't be unstacked because every + pull request in it is locked and cannot be removed. + content: + application/json: + schema: + "$ref": "#/components/schemas/validation-error" + examples: + cannot_be_removed: + summary: Every pull request in the stack is locked and can't be + removed + value: + message: Pull requests in this stack cannot be removed + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + '204': + "$ref": "#/components/responses/no_content" + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks "/repos/{owner}/{repo}/stargazers": get: summary: List stargazers @@ -105194,6 +106132,11 @@ components: type: array items: "$ref": "#/components/schemas/simple-user" + linked_pull_requests: + description: Pull requests linked to this alert. + type: array + items: + "$ref": "#/components/schemas/pull-request-simple" required: - number - created_at @@ -113493,6 +114436,115 @@ components: items: type: string additionalProperties: false + pull-request-stack-minimal: + title: Pull Request Stack Minimal + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False when all + pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + type: object + required: + - number + - state + - draft + - merged_at + - head + properties: + number: + type: integer + state: + type: string + enum: + - open + - closed + draft: + type: boolean + merged_at: + type: + - string + - 'null' + format: date-time + head: + type: object + required: + - ref + - sha + properties: + ref: + type: string + sha: + type: string + pull-request-stack-pull-request: + title: Pull Request Stack Pull Request + type: object + allOf: + - "$ref": "#/components/schemas/pull-request-minimal" + - type: object + required: + - node_id + - title + - state + - merged_at + - draft + - html_url + - user + properties: + node_id: + type: string + title: + type: string + state: + type: string + enum: + - open + - closed + merged_at: + type: + - string + - 'null' + format: date-time + draft: + type: boolean + html_url: + type: string + format: uri + user: + anyOf: + - type: 'null' + - "$ref": "#/components/schemas/simple-user" stargazer: title: Stargazer description: Stargazer diff --git a/descriptions-next/api.github.com/api.github.com.json b/descriptions-next/api.github.com/api.github.com.json index 594fddf7e0..aa99b73e12 100644 --- a/descriptions-next/api.github.com/api.github.com.json +++ b/descriptions-next/api.github.com/api.github.com.json @@ -76272,6 +76272,1285 @@ } } }, + "/repos/{owner}/{repo}/stacks": { + "get": { + "summary": "List pull request stacks", + "description": "Lists pull request stacks in a repository.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/list", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "pull_request", + "description": "Filter to the stack containing this repository pull request number.", + "in": "query", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "$ref": "#/components/parameters/per-page" + }, + { + "$ref": "#/components/parameters/page" + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-minimal" + } + }, + "examples": { + "default": { + "value": [ + { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "pull_requests": [ + { + "number": 101, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11" + } + }, + { + "number": 102, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22" + } + } + ], + "open": true, + "created_at": "2026-04-15T10:00:00Z" + } + ] + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "422": { + "$ref": "#/components/responses/validation_failed" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + }, + "post": { + "summary": "Create a pull request stack", + "description": "Creates a stack from an ordered list of pull request numbers. Provide the pull\nrequest numbers from the bottom of the stack to the top. Each pull request's\nbase ref must match the previous pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/create", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers forming the stack from bottom to top.", + "items": { + "type": "integer" + }, + "minItems": 2, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 101, + 102, + 103 + ] + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "422": { + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't form a\nvalid stack.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] + } + } + ] + } + } + } + } + } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 + ] + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't form a linear stack", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}": { + "get": { + "summary": "Get a pull request stack", + "description": "Gets a pull request stack by providing its stack number.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/get", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/add": { + "post": { + "summary": "Add pull requests to a pull request stack", + "description": "Appends an ordered list of pull request numbers onto the top of an existing\nstack. Provide only the pull requests you want to add, from the current top of\nthe stack upward. The first new pull request's base ref must match the current\ntop pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/add", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers to append to the stack, from the current top upward.", + "items": { + "type": "integer" + }, + "minItems": 1, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 104, + 102 + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/basic-error" + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "status": "409" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't be appended\nto the stack.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] + } + } + ] + } + } + } + } + } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 + ] + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't continue the stack linearly", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": { + "post": { + "summary": "Remove pull requests from a pull request stack", + "description": "Removes the unmerged pull requests from a stack. Pull requests that cannot be\nunstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated\nstack is returned with a `200`. When no pull requests remain, the stack is\ndissolved and a `204` is returned.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/unstack", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + }, + "parameters": [ + { + "$ref": "#/components/parameters/owner" + }, + { + "$ref": "#/components/parameters/repo" + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "$ref": "#/components/schemas/pull-request-stack-pull-request" + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "$ref": "#/components/responses/not_found" + }, + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/basic-error" + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack", + "status": "409" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the stack can't be unstacked because every\npull request in it is locked and cannot be removed.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/validation-error" + }, + "examples": { + "cannot_be_removed": { + "summary": "Every pull request in the stack is locked and can't be removed", + "value": { + "message": "Pull requests in this stack cannot be removed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + } + } + } + } + } + }, + "204": { + "$ref": "#/components/responses/no_content" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, "/repos/{owner}/{repo}/stargazers": { "get": { "summary": "List stargazers", @@ -145755,168 +147034,175 @@ "items": { "$ref": "#/components/schemas/simple-user" } - } - }, - "required": [ - "number", - "created_at", - "url", - "html_url", - "instances_url", - "state", - "dismissed_by", - "dismissed_at", - "dismissed_reason", - "rule", - "tool", - "most_recent_instance" - ] - }, - "code-scanning-alert-rule": { - "type": "object", - "properties": { - "id": { - "type": [ - "string", - "null" - ], - "description": "A unique identifier for the rule used to detect the alert." - }, - "name": { - "type": "string", - "description": "The name of the rule used to detect the alert." + } + }, + "required": [ + "number", + "created_at", + "url", + "html_url", + "instances_url", + "state", + "dismissed_by", + "dismissed_at", + "dismissed_reason", + "rule", + "tool", + "most_recent_instance" + ] + }, + "code-scanning-alert-rule": { + "type": "object", + "properties": { + "id": { + "type": [ + "string", + "null" + ], + "description": "A unique identifier for the rule used to detect the alert." + }, + "name": { + "type": "string", + "description": "The name of the rule used to detect the alert." + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the alert.", + "enum": [ + "none", + "note", + "warning", + "error", + null + ] + }, + "security_severity_level": { + "type": [ + "string", + "null" + ], + "description": "The security severity of the alert.", + "enum": [ + "low", + "medium", + "high", + "critical", + null + ] + }, + "description": { + "type": "string", + "description": "A short description of the rule used to detect the alert." + }, + "full_description": { + "type": "string", + "description": "A description of the rule used to detect the alert." + }, + "tags": { + "type": [ + "array", + "null" + ], + "description": "A set of tags applicable for the rule.", + "items": { + "type": "string" + } + }, + "help": { + "type": [ + "string", + "null" + ], + "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." + } + } + }, + "code-scanning-alert": { + "type": "object", + "properties": { + "number": { + "$ref": "#/components/schemas/alert-number" + }, + "created_at": { + "$ref": "#/components/schemas/alert-created-at" + }, + "updated_at": { + "$ref": "#/components/schemas/alert-updated-at" + }, + "url": { + "$ref": "#/components/schemas/alert-url" + }, + "html_url": { + "$ref": "#/components/schemas/alert-html-url" + }, + "instances_url": { + "$ref": "#/components/schemas/alert-instances-url" + }, + "state": { + "$ref": "#/components/schemas/code-scanning-alert-state" + }, + "fixed_at": { + "$ref": "#/components/schemas/alert-fixed-at" + }, + "dismissed_by": { + "anyOf": [ + { + "type": "null" + }, + { + "$ref": "#/components/schemas/simple-user" + } + ] + }, + "dismissed_at": { + "$ref": "#/components/schemas/alert-dismissed-at" + }, + "dismissed_reason": { + "$ref": "#/components/schemas/code-scanning-alert-dismissed-reason" + }, + "dismissed_comment": { + "$ref": "#/components/schemas/code-scanning-alert-dismissed-comment" + }, + "rule": { + "$ref": "#/components/schemas/code-scanning-alert-rule" + }, + "tool": { + "$ref": "#/components/schemas/code-scanning-analysis-tool" + }, + "most_recent_instance": { + "$ref": "#/components/schemas/code-scanning-alert-instance" + }, + "dismissal_approved_by": { + "anyOf": [ + { + "type": "null" + }, + { + "$ref": "#/components/schemas/simple-user" + } + ] + }, + "assignees": { + "type": "array", + "items": { + "$ref": "#/components/schemas/simple-user" + } }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the alert.", - "enum": [ - "none", - "note", - "warning", - "error", - null - ] - }, - "security_severity_level": { - "type": [ - "string", - "null" - ], - "description": "The security severity of the alert.", - "enum": [ - "low", - "medium", - "high", - "critical", - null - ] - }, - "description": { - "type": "string", - "description": "A short description of the rule used to detect the alert." - }, - "full_description": { - "type": "string", - "description": "A description of the rule used to detect the alert." - }, - "tags": { - "type": [ - "array", - "null" - ], - "description": "A set of tags applicable for the rule.", - "items": { - "type": "string" - } - }, - "help": { - "type": [ - "string", - "null" - ], - "description": "Detailed documentation for the rule as GitHub Flavored Markdown." - }, - "help_uri": { - "type": [ - "string", - "null" - ], - "description": "A link to the documentation for the rule used to detect the alert." - } - } - }, - "code-scanning-alert": { - "type": "object", - "properties": { - "number": { - "$ref": "#/components/schemas/alert-number" - }, - "created_at": { - "$ref": "#/components/schemas/alert-created-at" - }, - "updated_at": { - "$ref": "#/components/schemas/alert-updated-at" - }, - "url": { - "$ref": "#/components/schemas/alert-url" - }, - "html_url": { - "$ref": "#/components/schemas/alert-html-url" - }, - "instances_url": { - "$ref": "#/components/schemas/alert-instances-url" - }, - "state": { - "$ref": "#/components/schemas/code-scanning-alert-state" - }, - "fixed_at": { - "$ref": "#/components/schemas/alert-fixed-at" - }, - "dismissed_by": { - "anyOf": [ - { - "type": "null" - }, - { - "$ref": "#/components/schemas/simple-user" - } - ] - }, - "dismissed_at": { - "$ref": "#/components/schemas/alert-dismissed-at" - }, - "dismissed_reason": { - "$ref": "#/components/schemas/code-scanning-alert-dismissed-reason" - }, - "dismissed_comment": { - "$ref": "#/components/schemas/code-scanning-alert-dismissed-comment" - }, - "rule": { - "$ref": "#/components/schemas/code-scanning-alert-rule" - }, - "tool": { - "$ref": "#/components/schemas/code-scanning-analysis-tool" - }, - "most_recent_instance": { - "$ref": "#/components/schemas/code-scanning-alert-instance" - }, - "dismissal_approved_by": { - "anyOf": [ - { - "type": "null" - }, - { - "$ref": "#/components/schemas/simple-user" - } - ] - }, - "assignees": { + "linked_pull_requests": { + "description": "Pull requests linked to this alert.", "type": "array", "items": { - "$ref": "#/components/schemas/simple-user" + "$ref": "#/components/schemas/pull-request-simple" } } }, @@ -157941,6 +159227,164 @@ }, "additionalProperties": false }, + "pull-request-stack-minimal": { + "title": "Pull Request Stack Minimal", + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "type": "object", + "required": [ + "number", + "state", + "draft", + "merged_at", + "head" + ], + "properties": { + "number": { + "type": "integer" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "draft": { + "type": "boolean" + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "head": { + "type": "object", + "required": [ + "ref", + "sha" + ], + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + } + } + } + } + } + } + } + }, + "pull-request-stack-pull-request": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "$ref": "#/components/schemas/pull-request-minimal" + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "$ref": "#/components/schemas/simple-user" + } + ] + } + } + } + ] + }, "stargazer": { "title": "Stargazer", "description": "Stargazer", diff --git a/descriptions-next/api.github.com/api.github.com.yaml b/descriptions-next/api.github.com/api.github.com.yaml index d84371c62f..3b4b1b5a51 100644 --- a/descriptions-next/api.github.com/api.github.com.yaml +++ b/descriptions-next/api.github.com/api.github.com.yaml @@ -55776,6 +55776,944 @@ paths: enabledForGitHubApps: true category: security-advisories subcategory: repository-advisories + "/repos/{owner}/{repo}/stacks": + get: + summary: List pull request stacks + description: Lists pull request stacks in a repository. + tags: + - pulls + operationId: pull-request-stacks/list + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: pull_request + description: Filter to the stack containing this repository pull request number. + in: query + required: false + schema: + type: integer + - "$ref": "#/components/parameters/per-page" + - "$ref": "#/components/parameters/page" + responses: + '200': + description: Response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-minimal" + examples: + default: + value: + - id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + pull_requests: + - number: 101 + state: open + draft: false + merged_at: + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + - number: 102 + state: open + draft: false + merged_at: + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + open: true + created_at: '2026-04-15T10:00:00Z' + '404': + "$ref": "#/components/responses/not_found" + '422': + "$ref": "#/components/responses/validation_failed" + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + post: + summary: Create a pull request stack + description: |- + Creates a stack from an ordered list of pull request numbers. Provide the pull + request numbers from the bottom of the stack to the top. Each pull request's + base ref must match the previous pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/create + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers forming the + stack from bottom to top. + items: + type: integer + minItems: 2 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 101 + - 102 + - 103 + responses: + '201': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't form a + valid stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't form a linear stack + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}": + get: + summary: Get a pull request stack + description: Gets a pull request stack by providing its stack number. + tags: + - pulls + operationId: pull-request-stacks/get + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/add": + post: + summary: Add pull requests to a pull request stack + description: |- + Appends an ordered list of pull request numbers onto the top of an existing + stack. Provide only the pull requests you want to add, from the current top of + the stack upward. The first new pull request's base ref must match the current + top pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/add + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers to append to + the stack, from the current top upward. + items: + type: integer + minItems: 1 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 104 + - 102 + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: + "$ref": "#/components/schemas/basic-error" + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't be appended + to the stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't continue the stack linearly + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": + post: + summary: Remove pull requests from a pull request stack + description: |- + Removes the unmerged pull requests from a stack. Pull requests that cannot be + unstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated + stack is returned with a `200`. When no pull requests remain, the stack is + dissolved and a `204` is returned. + tags: + - pulls + operationId: pull-request-stacks/unstack + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + parameters: + - "$ref": "#/components/parameters/owner" + - "$ref": "#/components/parameters/repo" + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + "$ref": "#/components/schemas/pull-request-stack-pull-request" + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': + "$ref": "#/components/responses/not_found" + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: + "$ref": "#/components/schemas/basic-error" + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the stack can't be unstacked because every + pull request in it is locked and cannot be removed. + content: + application/json: + schema: + "$ref": "#/components/schemas/validation-error" + examples: + cannot_be_removed: + summary: Every pull request in the stack is locked and can't be + removed + value: + message: Pull requests in this stack cannot be removed + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + '204': + "$ref": "#/components/responses/no_content" + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks "/repos/{owner}/{repo}/stargazers": get: summary: List stargazers @@ -106369,6 +107307,11 @@ components: type: array items: "$ref": "#/components/schemas/simple-user" + linked_pull_requests: + description: Pull requests linked to this alert. + type: array + items: + "$ref": "#/components/schemas/pull-request-simple" required: - number - created_at @@ -114793,6 +115736,115 @@ components: items: type: string additionalProperties: false + pull-request-stack-minimal: + title: Pull Request Stack Minimal + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False when all + pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + type: object + required: + - number + - state + - draft + - merged_at + - head + properties: + number: + type: integer + state: + type: string + enum: + - open + - closed + draft: + type: boolean + merged_at: + type: + - string + - 'null' + format: date-time + head: + type: object + required: + - ref + - sha + properties: + ref: + type: string + sha: + type: string + pull-request-stack-pull-request: + title: Pull Request Stack Pull Request + type: object + allOf: + - "$ref": "#/components/schemas/pull-request-minimal" + - type: object + required: + - node_id + - title + - state + - merged_at + - draft + - html_url + - user + properties: + node_id: + type: string + title: + type: string + state: + type: string + enum: + - open + - closed + merged_at: + type: + - string + - 'null' + format: date-time + draft: + type: boolean + html_url: + type: string + format: uri + user: + anyOf: + - type: 'null' + - "$ref": "#/components/schemas/simple-user" stargazer: title: Stargazer description: Stargazer diff --git a/descriptions-next/api.github.com/dereferenced/api.github.com.2022-11-28.deref.json b/descriptions-next/api.github.com/dereferenced/api.github.com.2022-11-28.deref.json index 18d39284b7..d13ae804b9 100644 --- a/descriptions-next/api.github.com/dereferenced/api.github.com.2022-11-28.deref.json +++ b/descriptions-next/api.github.com/dereferenced/api.github.com.2022-11-28.deref.json @@ -360673,960 +360673,20 @@ "url" ] } - } - }, - "required": [ - "number", - "created_at", - "url", - "html_url", - "instances_url", - "state", - "dismissed_by", - "dismissed_at", - "dismissed_reason", - "rule", - "tool", - "most_recent_instance" - ] - }, - "examples": { - "default": { - "value": { - "number": 42, - "created_at": "2020-06-19T11:21:34Z", - "url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42", - "html_url": "https://github.com/octocat/hello-world/code-scanning/42", - "state": "dismissed", - "fixed_at": null, - "dismissed_by": { - "login": "octocat", - "id": 54933897, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "dismissed_at": "2020-02-14T12:29:18Z", - "dismissed_reason": "false positive", - "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", - "rule": { - "id": "js/zipslip", - "severity": "error", - "security_severity_level": "high", - "description": "Arbitrary file write during zip extraction (\"Zip Slip\")", - "name": "js/zipslip", - "full_description": "Extracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten.", - "tags": [ - "security", - "external/cwe/cwe-022" - ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", - "help_uri": "https://codeql.github.com/" - }, - "tool": { - "name": "CodeQL", - "guid": null, - "version": "2.4.0" - }, - "most_recent_instance": { - "ref": "refs/heads/main", - "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", - "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", - "environment": "{}", - "state": "dismissed", - "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", - "message": { - "text": "This path depends on a user-provided value." - }, - "location": { - "path": "spec-main/api-session-spec.ts", - "start_line": 917, - "end_line": 917, - "start_column": 7, - "end_column": 18 - }, - "classifications": [ - "test" - ] - }, - "instances_url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances" - } - } - } - } - } - }, - "304": { - "description": "Not modified" - }, - "403": { - "description": "Response if GitHub Advanced Security is not enabled for this repository", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "code-scanning", - "subcategory": "code-scanning" - } - }, - "patch": { - "summary": "Update a code scanning alert", - "description": "Updates the status of a single code scanning alert.\nOAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.", - "operationId": "code-scanning/update-alert", - "tags": [ - "code-scanning" - ], - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/code-scanning/code-scanning#update-a-code-scanning-alert" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alert_number", - "in": "path", - "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", - "required": true, - "schema": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "state": { - "description": "Sets the state of the code scanning alert. You must provide `dismissed_reason` when you set the state to `dismissed`.", - "type": "string", - "enum": [ - "open", - "dismissed" - ] - }, - "dismissed_reason": { - "type": [ - "string", - "null" - ], - "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", - "enum": [ - "false positive", - "won't fix", - "used in tests", - null - ] - }, - "dismissed_comment": { - "type": [ - "string", - "null" - ], - "description": "The dismissal comment associated with the dismissal of the alert.", - "maxLength": 280 - }, - "create_request": { - "type": "boolean", - "description": "If `true`, attempt to create an alert dismissal request." - }, - "assignees": { - "description": "The list of users to assign to the code scanning alert. An empty array unassigns all previous assignees from the alert.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "anyOf": [ - { - "required": [ - "state" - ] - }, - { - "required": [ - "assignees" - ] - } - ] - }, - "examples": { - "default": { - "value": { - "state": "dismissed", - "dismissed_reason": "false positive", - "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", - "create_request": true - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "number": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - }, - "created_at": { - "type": "string", - "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "updated_at": { - "type": "string", - "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "url": { - "type": "string", - "description": "The REST API URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "html_url": { - "type": "string", - "description": "The GitHub URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "instances_url": { - "type": "string", - "description": "The REST API URL for fetching the list of instances for an alert.", - "format": "uri", - "readOnly": true - }, - "state": { - "type": [ - "string", - "null" - ], - "description": "State of a code scanning alert.", - "enum": [ - "open", - "dismissed", - "fixed", - null - ] - }, - "fixed_at": { - "type": [ - "string", - "null" - ], - "description": "The time that the alert was no longer detected and was considered fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "dismissed_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "dismissed_at": { - "type": [ - "string", - "null" - ], - "description": "The time that the alert was dismissed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "dismissed_reason": { - "type": [ - "string", - "null" - ], - "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", - "enum": [ - "false positive", - "won't fix", - "used in tests", - null - ] - }, - "dismissed_comment": { - "type": [ - "string", - "null" - ], - "description": "The dismissal comment associated with the dismissal of the alert.", - "maxLength": 280 - }, - "rule": { - "type": "object", - "properties": { - "id": { - "type": [ - "string", - "null" - ], - "description": "A unique identifier for the rule used to detect the alert." - }, - "name": { - "type": "string", - "description": "The name of the rule used to detect the alert." - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the alert.", - "enum": [ - "none", - "note", - "warning", - "error", - null - ] - }, - "security_severity_level": { - "type": [ - "string", - "null" - ], - "description": "The security severity of the alert.", - "enum": [ - "low", - "medium", - "high", - "critical", - null - ] - }, - "description": { - "type": "string", - "description": "A short description of the rule used to detect the alert." - }, - "full_description": { - "type": "string", - "description": "A description of the rule used to detect the alert." - }, - "tags": { - "type": [ - "array", - "null" - ], - "description": "A set of tags applicable for the rule.", - "items": { - "type": "string" - } - }, - "help": { - "type": [ - "string", - "null" - ], - "description": "Detailed documentation for the rule as GitHub Flavored Markdown." - }, - "help_uri": { - "type": [ - "string", - "null" - ], - "description": "A link to the documentation for the rule used to detect the alert." - } - } - }, - "tool": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the tool used to generate the code scanning analysis." - }, - "version": { - "type": [ - "string", - "null" - ], - "description": "The version of the tool used to generate the code scanning analysis." - }, - "guid": { - "type": [ - "string", - "null" - ], - "description": "The GUID of the tool used to generate the code scanning analysis, if provided in the uploaded SARIF data." - } - } - }, - "most_recent_instance": { - "type": "object", - "properties": { - "ref": { - "type": "string", - "description": "The Git reference, formatted as `refs/pull//merge`, `refs/pull//head`,\n`refs/heads/` or simply ``." - }, - "analysis_key": { - "type": "string", - "description": "Identifies the configuration under which the analysis was executed. For example, in GitHub Actions this includes the workflow filename and job name." - }, - "environment": { - "type": "string", - "description": "Identifies the variable values associated with the environment in which the analysis that generated this alert instance was performed, such as the language that was analyzed." - }, - "category": { - "type": "string", - "description": "Identifies the configuration under which the analysis was executed. Used to distinguish between multiple analyses for the same tool and commit, but performed on different languages or different parts of the code." - }, - "state": { - "type": [ - "string", - "null" - ], - "description": "State of a code scanning alert.", - "enum": [ - "open", - "dismissed", - "fixed", - null - ] - }, - "commit_sha": { - "type": "string" - }, - "message": { - "type": "object", - "properties": { - "text": { - "type": "string" - }, - "markdown": { - "type": "string", - "description": "The message text as GitHub-flavored Markdown, with placeholder links for related locations replaced by links to the relevant code. Only populated when related locations are available for the alert instance." - } - } - }, - "location": { - "type": "object", - "description": "Describe a region within a file for the alert.", - "properties": { - "path": { - "type": "string" - }, - "start_line": { - "type": "integer" - }, - "end_line": { - "type": "integer" - }, - "start_column": { - "type": "integer" - }, - "end_column": { - "type": "integer" - } - } - }, - "html_url": { - "type": "string" - }, - "classifications": { - "type": "array", - "description": "Classifications that have been applied to the file that triggered the alert.\nFor example identifying it as documentation, or a generated file.", - "items": { - "type": [ - "string", - "null" - ], - "description": "A classification of the file. For example to identify it as generated.", - "enum": [ - "source", - "generated", - "test", - "library", - null - ] - } - } - } - }, - "dismissal_approved_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] }, - "assignees": { + "linked_pull_requests": { + "description": "Pull requests linked to this alert.", "type": "array", "items": { - "title": "Simple User", - "description": "A GitHub user.", + "title": "Pull Request Simple", + "description": "Pull Request Simple", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { + "url": { "type": "string", + "format": "uri", "examples": [ - "octocat" + "https://api.github.com/repos/octocat/Hello-World/pulls/1347" ] }, "id": { @@ -361639,139 +360699,9585 @@ "node_id": { "type": "string", "examples": [ - "MDQ6VXNlcjE=" + "MDExOlB1bGxSZXF1ZXN0MQ==" ] }, - "avatar_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "https://github.com/octocat/Hello-World/pull/1347" ] }, - "url": { + "diff_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat" + "https://github.com/octocat/Hello-World/pull/1347.diff" ] }, - "html_url": { + "patch_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat" + "https://github.com/octocat/Hello-World/pull/1347.patch" ] }, - "followers_url": { + "issue_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/followers" + "https://api.github.com/repos/octocat/Hello-World/issues/1347" ] }, - "following_url": { + "commits_url": { "type": "string", + "format": "uri", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" ] }, - "gists_url": { + "review_comments_url": { "type": "string", + "format": "uri", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" ] }, - "starred_url": { + "review_comment_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" ] }, - "subscriptions_url": { + "comments_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" ] }, - "organizations_url": { + "statuses_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/orgs" + "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" ] }, - "repos_url": { - "type": "string", - "format": "uri", + "number": { + "type": "integer", "examples": [ - "https://api.github.com/users/octocat/repos" + 1347 ] }, - "events_url": { + "state": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "open" ] }, - "received_events_url": { - "type": "string", - "format": "uri", + "locked": { + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/received_events" + true ] }, - "type": { + "title": { "type": "string", "examples": [ - "User" + "new-feature" ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "type": [ + "string", + "null" + ], "examples": [ - "\"2020-07-09T00:17:55Z\"" + "Please pull these awesome changes" + ] + }, + "labels": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "color": { + "type": "string" + }, + "default": { + "type": "boolean" + } + }, + "required": [ + "id", + "node_id", + "url", + "name", + "description", + "color", + "default" + ] + } + }, + "milestone": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Milestone", + "description": "A collection of related issues and pull requests.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/milestones/v1.0" + ] + }, + "labels_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1002604 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDk6TWlsZXN0b25lMTAwMjYwNA==" + ] + }, + "number": { + "description": "The number of the milestone.", + "type": "integer", + "examples": [ + 42 + ] + }, + "state": { + "description": "The state of the milestone.", + "type": "string", + "enum": [ + "open", + "closed" + ], + "default": "open", + "examples": [ + "open" + ] + }, + "title": { + "description": "The title of the milestone.", + "type": "string", + "examples": [ + "v1.0" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "Tracking milestone for version 1.0" + ] + }, + "creator": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "open_issues": { + "type": "integer", + "examples": [ + 4 + ] + }, + "closed_issues": { + "type": "integer", + "examples": [ + 8 + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-10T20:09:31Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2014-03-03T18:58:10Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2013-02-12T13:22:01Z" + ] + }, + "due_on": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2012-10-09T23:39:01Z" + ] + } + }, + "required": [ + "closed_issues", + "creator", + "description", + "due_on", + "closed_at", + "id", + "node_id", + "labels_url", + "html_url", + "number", + "open_issues", + "state", + "title", + "url", + "created_at", + "updated_at" + ] + } + ] + }, + "active_lock_reason": { + "type": [ + "string", + "null" + ], + "examples": [ + "too heated" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merge_commit_sha": { + "type": [ + "string", + "null" + ], + "examples": [ + "e5bd3914e2e596debea16f433f57875b5b90bcd6" + ] + }, + "assignee": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_reviewers": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" + ], + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } + }, + "head": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "base": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "_links": { + "type": "object", + "properties": { + "comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "commits": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "statuses": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "issue": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comment": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "comments", + "commits", + "statuses", + "html", + "issue", + "review_comments", + "review_comment", + "self" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + }, + "auto_merge": { + "title": "Auto merge", + "description": "The status of auto merging a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "enabled_by": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "merge_method": { + "type": "string", + "description": "The merge method to use.", + "enum": [ + "merge", + "squash", + "rebase" + ] + }, + "commit_title": { + "type": "string", + "description": "Title for the merge commit message." + }, + "commit_message": { + "type": "string", + "description": "Commit message for the merge commit." + } + }, + "required": [ + "enabled_by", + "merge_method", + "commit_title", + "commit_message" + ] + }, + "stack": { + "title": "Pull Request Stack", + "description": "The stack information associated with a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The base ref of the stack this pull request belongs to." + }, + "sha": { + "type": "string", + "description": "The base SHA of the stack this pull request belongs to." + } + }, + "required": [ + "ref", + "sha" + ] + }, + "size": { + "type": "integer", + "description": "The total number of pull requests in the stack." + }, + "position": { + "type": "integer", + "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + }, + "id": { + "type": "integer", + "description": "The ID of the stack that this pull request belongs to." + }, + "number": { + "type": "integer", + "description": "The number of the stack that this pull request belongs to." + } + }, + "required": [ + "base" + ] + }, + "draft": { + "description": "Indicates whether or not the pull request is a draft.", + "type": "boolean", + "examples": [ + false + ] + } + }, + "required": [ + "_links", + "assignee", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merge_commit_sha", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ] + } + } + }, + "required": [ + "number", + "created_at", + "url", + "html_url", + "instances_url", + "state", + "dismissed_by", + "dismissed_at", + "dismissed_reason", + "rule", + "tool", + "most_recent_instance" + ] + }, + "examples": { + "default": { + "value": { + "number": 42, + "created_at": "2020-06-19T11:21:34Z", + "url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42", + "html_url": "https://github.com/octocat/hello-world/code-scanning/42", + "state": "dismissed", + "fixed_at": null, + "dismissed_by": { + "login": "octocat", + "id": 54933897, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "dismissed_at": "2020-02-14T12:29:18Z", + "dismissed_reason": "false positive", + "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", + "rule": { + "id": "js/zipslip", + "severity": "error", + "security_severity_level": "high", + "description": "Arbitrary file write during zip extraction (\"Zip Slip\")", + "name": "js/zipslip", + "full_description": "Extracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten.", + "tags": [ + "security", + "external/cwe/cwe-022" + ], + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" + }, + "tool": { + "name": "CodeQL", + "guid": null, + "version": "2.4.0" + }, + "most_recent_instance": { + "ref": "refs/heads/main", + "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", + "environment": "{}", + "state": "dismissed", + "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", + "message": { + "text": "This path depends on a user-provided value." + }, + "location": { + "path": "spec-main/api-session-spec.ts", + "start_line": 917, + "end_line": 917, + "start_column": 7, + "end_column": 18 + }, + "classifications": [ + "test" + ] + }, + "instances_url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances" + } + } + } + } + } + }, + "304": { + "description": "Not modified" + }, + "403": { + "description": "Response if GitHub Advanced Security is not enabled for this repository", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "code-scanning", + "subcategory": "code-scanning" + } + }, + "patch": { + "summary": "Update a code scanning alert", + "description": "Updates the status of a single code scanning alert.\nOAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.", + "operationId": "code-scanning/update-alert", + "tags": [ + "code-scanning" + ], + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/code-scanning/code-scanning#update-a-code-scanning-alert" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alert_number", + "in": "path", + "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", + "required": true, + "schema": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "state": { + "description": "Sets the state of the code scanning alert. You must provide `dismissed_reason` when you set the state to `dismissed`.", + "type": "string", + "enum": [ + "open", + "dismissed" + ] + }, + "dismissed_reason": { + "type": [ + "string", + "null" + ], + "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", + "enum": [ + "false positive", + "won't fix", + "used in tests", + null + ] + }, + "dismissed_comment": { + "type": [ + "string", + "null" + ], + "description": "The dismissal comment associated with the dismissal of the alert.", + "maxLength": 280 + }, + "create_request": { + "type": "boolean", + "description": "If `true`, attempt to create an alert dismissal request." + }, + "assignees": { + "description": "The list of users to assign to the code scanning alert. An empty array unassigns all previous assignees from the alert.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "anyOf": [ + { + "required": [ + "state" + ] + }, + { + "required": [ + "assignees" + ] + } + ] + }, + "examples": { + "default": { + "value": { + "state": "dismissed", + "dismissed_reason": "false positive", + "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", + "create_request": true + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "number": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + }, + "created_at": { + "type": "string", + "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "updated_at": { + "type": "string", + "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "url": { + "type": "string", + "description": "The REST API URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "html_url": { + "type": "string", + "description": "The GitHub URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "instances_url": { + "type": "string", + "description": "The REST API URL for fetching the list of instances for an alert.", + "format": "uri", + "readOnly": true + }, + "state": { + "type": [ + "string", + "null" + ], + "description": "State of a code scanning alert.", + "enum": [ + "open", + "dismissed", + "fixed", + null + ] + }, + "fixed_at": { + "type": [ + "string", + "null" + ], + "description": "The time that the alert was no longer detected and was considered fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "dismissed_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "dismissed_at": { + "type": [ + "string", + "null" + ], + "description": "The time that the alert was dismissed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "dismissed_reason": { + "type": [ + "string", + "null" + ], + "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", + "enum": [ + "false positive", + "won't fix", + "used in tests", + null + ] + }, + "dismissed_comment": { + "type": [ + "string", + "null" + ], + "description": "The dismissal comment associated with the dismissal of the alert.", + "maxLength": 280 + }, + "rule": { + "type": "object", + "properties": { + "id": { + "type": [ + "string", + "null" + ], + "description": "A unique identifier for the rule used to detect the alert." + }, + "name": { + "type": "string", + "description": "The name of the rule used to detect the alert." + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the alert.", + "enum": [ + "none", + "note", + "warning", + "error", + null + ] + }, + "security_severity_level": { + "type": [ + "string", + "null" + ], + "description": "The security severity of the alert.", + "enum": [ + "low", + "medium", + "high", + "critical", + null + ] + }, + "description": { + "type": "string", + "description": "A short description of the rule used to detect the alert." + }, + "full_description": { + "type": "string", + "description": "A description of the rule used to detect the alert." + }, + "tags": { + "type": [ + "array", + "null" + ], + "description": "A set of tags applicable for the rule.", + "items": { + "type": "string" + } + }, + "help": { + "type": [ + "string", + "null" + ], + "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." + } + } + }, + "tool": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the tool used to generate the code scanning analysis." + }, + "version": { + "type": [ + "string", + "null" + ], + "description": "The version of the tool used to generate the code scanning analysis." + }, + "guid": { + "type": [ + "string", + "null" + ], + "description": "The GUID of the tool used to generate the code scanning analysis, if provided in the uploaded SARIF data." + } + } + }, + "most_recent_instance": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The Git reference, formatted as `refs/pull//merge`, `refs/pull//head`,\n`refs/heads/` or simply ``." + }, + "analysis_key": { + "type": "string", + "description": "Identifies the configuration under which the analysis was executed. For example, in GitHub Actions this includes the workflow filename and job name." + }, + "environment": { + "type": "string", + "description": "Identifies the variable values associated with the environment in which the analysis that generated this alert instance was performed, such as the language that was analyzed." + }, + "category": { + "type": "string", + "description": "Identifies the configuration under which the analysis was executed. Used to distinguish between multiple analyses for the same tool and commit, but performed on different languages or different parts of the code." + }, + "state": { + "type": [ + "string", + "null" + ], + "description": "State of a code scanning alert.", + "enum": [ + "open", + "dismissed", + "fixed", + null + ] + }, + "commit_sha": { + "type": "string" + }, + "message": { + "type": "object", + "properties": { + "text": { + "type": "string" + }, + "markdown": { + "type": "string", + "description": "The message text as GitHub-flavored Markdown, with placeholder links for related locations replaced by links to the relevant code. Only populated when related locations are available for the alert instance." + } + } + }, + "location": { + "type": "object", + "description": "Describe a region within a file for the alert.", + "properties": { + "path": { + "type": "string" + }, + "start_line": { + "type": "integer" + }, + "end_line": { + "type": "integer" + }, + "start_column": { + "type": "integer" + }, + "end_column": { + "type": "integer" + } + } + }, + "html_url": { + "type": "string" + }, + "classifications": { + "type": "array", + "description": "Classifications that have been applied to the file that triggered the alert.\nFor example identifying it as documentation, or a generated file.", + "items": { + "type": [ + "string", + "null" + ], + "description": "A classification of the file. For example to identify it as generated.", + "enum": [ + "source", + "generated", + "test", + "library", + null + ] + } + } + } + }, + "dismissal_approved_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "linked_pull_requests": { + "description": "Pull requests linked to this alert.", + "type": "array", + "items": { + "title": "Pull Request Simple", + "description": "Pull Request Simple", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOlB1bGxSZXF1ZXN0MQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347" + ] + }, + "diff_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347.diff" + ] + }, + "patch_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347.patch" + ] + }, + "issue_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] + }, + "commits_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + ] + }, + "review_comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" + ] + }, + "review_comment_url": { + "type": "string", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" + ] + }, + "statuses_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "number": { + "type": "integer", + "examples": [ + 1347 + ] + }, + "state": { + "type": "string", + "examples": [ + "open" + ] + }, + "locked": { + "type": "boolean", + "examples": [ + true + ] + }, + "title": { + "type": "string", + "examples": [ + "new-feature" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "type": [ + "string", + "null" + ], + "examples": [ + "Please pull these awesome changes" + ] + }, + "labels": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "color": { + "type": "string" + }, + "default": { + "type": "boolean" + } + }, + "required": [ + "id", + "node_id", + "url", + "name", + "description", + "color", + "default" + ] + } + }, + "milestone": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Milestone", + "description": "A collection of related issues and pull requests.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/milestones/v1.0" + ] + }, + "labels_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1002604 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDk6TWlsZXN0b25lMTAwMjYwNA==" + ] + }, + "number": { + "description": "The number of the milestone.", + "type": "integer", + "examples": [ + 42 + ] + }, + "state": { + "description": "The state of the milestone.", + "type": "string", + "enum": [ + "open", + "closed" + ], + "default": "open", + "examples": [ + "open" + ] + }, + "title": { + "description": "The title of the milestone.", + "type": "string", + "examples": [ + "v1.0" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "Tracking milestone for version 1.0" + ] + }, + "creator": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "open_issues": { + "type": "integer", + "examples": [ + 4 + ] + }, + "closed_issues": { + "type": "integer", + "examples": [ + 8 + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-10T20:09:31Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2014-03-03T18:58:10Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2013-02-12T13:22:01Z" + ] + }, + "due_on": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2012-10-09T23:39:01Z" + ] + } + }, + "required": [ + "closed_issues", + "creator", + "description", + "due_on", + "closed_at", + "id", + "node_id", + "labels_url", + "html_url", + "number", + "open_issues", + "state", + "title", + "url", + "created_at", + "updated_at" + ] + } + ] + }, + "active_lock_reason": { + "type": [ + "string", + "null" + ], + "examples": [ + "too heated" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merge_commit_sha": { + "type": [ + "string", + "null" + ], + "examples": [ + "e5bd3914e2e596debea16f433f57875b5b90bcd6" + ] + }, + "assignee": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_reviewers": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" + ], + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } + }, + "head": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "base": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" ] }, - "user_view_type": { + "_links": { + "type": "object", + "properties": { + "comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "commits": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "statuses": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "issue": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comment": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "comments", + "commits", + "statuses", + "html", + "issue", + "review_comments", + "review_comment", + "self" + ] + }, + "author_association": { + "title": "author_association", "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], "examples": [ - "public" + "OWNER" + ] + }, + "auto_merge": { + "title": "Auto merge", + "description": "The status of auto merging a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "enabled_by": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "merge_method": { + "type": "string", + "description": "The merge method to use.", + "enum": [ + "merge", + "squash", + "rebase" + ] + }, + "commit_title": { + "type": "string", + "description": "Title for the merge commit message." + }, + "commit_message": { + "type": "string", + "description": "Commit message for the merge commit." + } + }, + "required": [ + "enabled_by", + "merge_method", + "commit_title", + "commit_message" + ] + }, + "stack": { + "title": "Pull Request Stack", + "description": "The stack information associated with a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The base ref of the stack this pull request belongs to." + }, + "sha": { + "type": "string", + "description": "The base SHA of the stack this pull request belongs to." + } + }, + "required": [ + "ref", + "sha" + ] + }, + "size": { + "type": "integer", + "description": "The total number of pull requests in the stack." + }, + "position": { + "type": "integer", + "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + }, + "id": { + "type": "integer", + "description": "The ID of the stack that this pull request belongs to." + }, + "number": { + "type": "integer", + "description": "The number of the stack that this pull request belongs to." + } + }, + "required": [ + "base" + ] + }, + "draft": { + "description": "Indicates whether or not the pull request is a draft.", + "type": "boolean", + "examples": [ + false ] } }, "required": [ - "avatar_url", - "events_url", - "followers_url", - "following_url", - "gists_url", - "gravatar_id", + "_links", + "assignee", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", "html_url", "id", "node_id", - "login", - "organizations_url", - "received_events_url", - "repos_url", - "site_admin", - "starred_url", - "subscriptions_url", - "type", - "url" + "issue_url", + "merge_commit_sha", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" ] } } @@ -635297,464 +643803,2093 @@ "\"2020-07-09T00:17:55Z\"" ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "body": { + "type": [ + "string", + "null" + ], + "examples": [ + "Please pull these awesome changes" + ] + }, + "labels": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "color": { + "type": "string" + }, + "default": { + "type": "boolean" + } + }, + "required": [ + "id", + "node_id", + "url", + "name", + "description", + "color", + "default" + ] + } + }, + "milestone": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Milestone", + "description": "A collection of related issues and pull requests.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/milestones/v1.0" + ] + }, + "labels_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1002604 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDk6TWlsZXN0b25lMTAwMjYwNA==" + ] + }, + "number": { + "description": "The number of the milestone.", + "type": "integer", + "examples": [ + 42 + ] + }, + "state": { + "description": "The state of the milestone.", + "type": "string", + "enum": [ + "open", + "closed" + ], + "default": "open", + "examples": [ + "open" + ] + }, + "title": { + "description": "The title of the milestone.", + "type": "string", + "examples": [ + "v1.0" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "Tracking milestone for version 1.0" + ] + }, + "creator": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "open_issues": { + "type": "integer", + "examples": [ + 4 + ] + }, + "closed_issues": { + "type": "integer", + "examples": [ + 8 + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-10T20:09:31Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2014-03-03T18:58:10Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2013-02-12T13:22:01Z" + ] + }, + "due_on": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2012-10-09T23:39:01Z" + ] + } + }, + "required": [ + "closed_issues", + "creator", + "description", + "due_on", + "closed_at", + "id", + "node_id", + "labels_url", + "html_url", + "number", + "open_issues", + "state", + "title", + "url", + "created_at", + "updated_at" + ] + } + ] + }, + "active_lock_reason": { + "type": [ + "string", + "null" + ], + "examples": [ + "too heated" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merge_commit_sha": { + "type": [ + "string", + "null" + ], + "examples": [ + "e5bd3914e2e596debea16f433f57875b5b90bcd6" + ] + }, + "assignee": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } }, - "body": { - "type": [ - "string", - "null" - ], - "examples": [ - "Please pull these awesome changes" - ] + "requested_reviewers": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } }, - "labels": { + "requested_teams": { "type": "array", "items": { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", "type": "object", "properties": { "id": { + "description": "Unique identifier of the team", "type": "integer", - "format": "int64" + "examples": [ + 1 + ] }, "node_id": { - "type": "string" + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] }, "url": { - "type": "string" + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] }, "name": { - "type": "string" + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] }, "description": { + "description": "Description of the team", "type": [ "string", "null" + ], + "examples": [ + "A great team." ] }, - "color": { - "type": "string" + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] }, - "default": { - "type": "boolean" + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] } }, "required": [ "id", "node_id", "url", + "members_url", "name", "description", - "color", - "default" + "permission", + "html_url", + "repositories_url", + "slug", + "type" ] } }, - "milestone": { - "anyOf": [ - { - "type": "null" + "head": { + "type": "object", + "properties": { + "label": { + "type": "string" }, - { - "title": "Milestone", - "description": "A collection of related issues and pull requests.", + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", "type": "object", "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, "url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones/1" + "https://api.github.com/repos/octocat/Hello-World" ] }, - "html_url": { + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World/milestones/v1.0" + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true ] }, - "labels_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" - ] + "has_pages": { + "type": "boolean" }, - "id": { - "type": "integer", + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, "examples": [ - 1002604 + true ] }, - "node_id": { - "type": "string", + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", "examples": [ - "MDk6TWlsZXN0b25lMTAwMjYwNA==" + true ] }, - "number": { - "description": "The number of the milestone.", - "type": "integer", + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", "examples": [ - 42 + true ] }, - "state": { - "description": "The state of the milestone.", + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", "type": "string", "enum": [ - "open", - "closed" + "all", + "collaborators_only" ], - "default": "open", "examples": [ - "open" + "all" ] }, - "title": { - "description": "The title of the milestone.", - "type": "string", + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "v1.0" + "2011-01-26T19:06:43Z" ] }, - "description": { + "created_at": { "type": [ "string", "null" ], + "format": "date-time", "examples": [ - "Tracking milestone for version 1.0" + "2011-01-26T19:01:12Z" ] }, - "creator": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" ] }, - "open_issues": { - "type": "integer", + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", "examples": [ - 4 + true ] }, - "closed_issues": { - "type": "integer", + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", "examples": [ - 8 + true ] }, - "created_at": { - "type": "string", - "format": "date-time", + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", "examples": [ - "2011-04-10T20:09:31Z" + false ] }, - "updated_at": { - "type": "string", - "format": "date-time", + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", "examples": [ - "2014-03-03T18:58:10Z" + false ] }, - "closed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", "examples": [ - "2013-02-12T13:22:01Z" + false ] }, - "due_on": { - "type": [ - "string", - "null" + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" ], - "format": "date-time", + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", "examples": [ - "2012-10-09T23:39:01Z" + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } } }, "required": [ - "closed_issues", - "creator", + "archive_url", + "assignees_url", + "blobs_url", + "branches_url", + "collaborators_url", + "comments_url", + "commits_url", + "compare_url", + "contents_url", + "contributors_url", + "deployments_url", "description", - "due_on", - "closed_at", + "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", - "html_url", - "number", - "open_issues", - "state", - "title", + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", "created_at", "updated_at" ] - } - ] - }, - "active_lock_reason": { - "type": [ - "string", - "null" - ], - "examples": [ - "too heated" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "closed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "merged_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "merge_commit_sha": { - "type": [ - "string", - "null" - ], - "examples": [ - "e5bd3914e2e596debea16f433f57875b5b90bcd6" - ] - }, - "assignee": { - "anyOf": [ - { - "type": "null" }, - { + "sha": { + "type": "string" + }, + "user": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -635922,488 +646057,16 @@ "url" ] } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" ] }, - "assignees": { - "type": "array", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - }, - "requested_reviewers": { - "type": "array", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - }, - "requested_teams": { - "type": "array", - "items": { - "title": "Team Simple", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the team", - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VGVhbTE=" - ] - }, - "url": { - "description": "URL for the team", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1" - ] - }, - "members_url": { - "type": "string", - "examples": [ - "https://api.github.com/organizations/1/team/1/members{/member}" - ] - }, - "name": { - "description": "Name of the team", - "type": "string", - "examples": [ - "Justice League" - ] - }, - "description": { - "description": "Description of the team", - "type": [ - "string", - "null" - ], - "examples": [ - "A great team." - ] - }, - "permission": { - "description": "Permission that the team will have for its repositories", - "type": "string", - "examples": [ - "admin" - ] - }, - "privacy": { - "description": "The level of privacy this team should have", - "type": "string", - "examples": [ - "closed" - ] - }, - "notification_setting": { - "description": "The notification setting the team has set", - "type": "string", - "examples": [ - "notifications_enabled" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "repositories_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1/repos" - ] - }, - "slug": { - "type": "string", - "examples": [ - "justice-league" - ] - }, - "ldap_dn": { - "description": "Distinguished Name (DN) that team maps to within LDAP environment", - "type": "string", - "examples": [ - "uid=example,ou=users,dc=github,dc=com" - ] - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "type" - ] - } - }, - "head": { + "base": { "type": "object", "properties": { "label": { @@ -637560,1309 +647223,1862 @@ "user" ] }, - "base": { + "_links": { "type": "object", "properties": { - "label": { - "type": "string" + "comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] }, - "ref": { - "type": "string" + "commits": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] }, - "repo": { - "title": "Repository", - "description": "A repository on GitHub.", + "statuses": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "issue": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comment": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "comments", + "commits", + "statuses", + "html", + "issue", + "review_comments", + "review_comment", + "self" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + }, + "auto_merge": { + "title": "Auto merge", + "description": "The status of auto merging a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "enabled_by": { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, "name": { - "description": "The name of the repository.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "forks": { - "type": "integer" - }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } - }, - "required": [ - "admin", - "pull", - "push" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { "type": [ "string", "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" ] }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" + "email": { + "type": [ + "string", + "null" ] }, - "events_url": { + "login": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" + "octocat" ] }, - "forks_url": { - "type": "string", - "format": "uri", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" + 1 ] }, - "git_commits_url": { + "node_id": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + "MDQ6VXNlcjE=" ] }, - "git_refs_url": { + "avatar_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + "https://github.com/images/error/octocat_happy.gif" ] }, - "git_tags_url": { - "type": "string", + "gravatar_id": { + "type": [ + "string", + "null" + ], "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + "41d064eb2195891e12d0413f63227ea7" ] }, - "git_url": { + "url": { "type": "string", + "format": "uri", "examples": [ - "git:github.com/octocat/Hello-World.git" + "https://api.github.com/users/octocat" ] }, - "issue_comment_url": { + "html_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + "https://github.com/octocat" ] }, - "issue_events_url": { + "followers_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + "https://api.github.com/users/octocat/followers" ] }, - "issues_url": { + "following_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "keys_url": { + "gists_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "labels_url": { + "starred_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "languages_url": { + "subscriptions_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" + "https://api.github.com/users/octocat/subscriptions" ] }, - "merges_url": { + "organizations_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" + "https://api.github.com/users/octocat/orgs" ] }, - "milestones_url": { + "repos_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + "https://api.github.com/users/octocat/repos" ] }, - "notifications_url": { + "events_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "pulls_url": { + "received_events_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + "https://api.github.com/users/octocat/received_events" ] }, - "releases_url": { + "type": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + "User" ] }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" - ] + "site_admin": { + "type": "boolean" }, - "stargazers_url": { + "starred_at": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" + "\"2020-07-09T00:17:55Z\"" ] }, - "statuses_url": { + "user_view_type": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + "public" ] + } + }, + "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" + ] + }, + "merge_method": { + "type": "string", + "description": "The merge method to use.", + "enum": [ + "merge", + "squash", + "rebase" + ] + }, + "commit_title": { + "type": "string", + "description": "Title for the merge commit message." + }, + "commit_message": { + "type": "string", + "description": "Commit message for the merge commit." + } + }, + "required": [ + "enabled_by", + "merge_method", + "commit_title", + "commit_message" + ] + }, + "stack": { + "title": "Pull Request Stack", + "description": "The stack information associated with a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The base ref of the stack this pull request belongs to." }, - "subscribers_url": { + "sha": { "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" + "description": "The base SHA of the stack this pull request belongs to." + } + }, + "required": [ + "ref", + "sha" + ] + }, + "size": { + "type": "integer", + "description": "The total number of pull requests in the stack." + }, + "position": { + "type": "integer", + "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + }, + "id": { + "type": "integer", + "description": "The ID of the stack that this pull request belongs to." + }, + "number": { + "type": "integer", + "description": "The number of the stack that this pull request belongs to." + } + }, + "required": [ + "base" + ] + }, + "draft": { + "description": "Indicates whether or not the pull request is a draft.", + "type": "boolean", + "examples": [ + false + ] + }, + "merged": { + "type": "boolean" + }, + "mergeable": { + "type": [ + "boolean", + "null" + ], + "examples": [ + true + ] + }, + "rebaseable": { + "type": [ + "boolean", + "null" + ], + "examples": [ + true + ] + }, + "mergeable_state": { + "type": "string", + "examples": [ + "clean" + ] + }, + "merged_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" ] }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" + "email": { + "type": [ + "string", + "null" ] }, - "tags_url": { + "login": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" + "octocat" ] }, - "teams_url": { - "type": "string", - "format": "uri", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" + 1 ] }, - "trees_url": { + "node_id": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + "MDQ6VXNlcjE=" ] }, - "clone_url": { + "avatar_url": { "type": "string", + "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World.git" + "https://github.com/images/error/octocat_happy.gif" ] }, - "mirror_url": { + "gravatar_id": { "type": [ "string", "null" ], - "format": "uri", "examples": [ - "git:git.example.com/octocat/Hello-World" + "41d064eb2195891e12d0413f63227ea7" ] }, - "hooks_url": { + "url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" + "https://api.github.com/users/octocat" ] }, - "svn_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "https://svn.github.com/octocat/Hello-World" + "https://github.com/octocat" ] }, - "homepage": { - "type": [ - "string", - "null" - ], + "followers_url": { + "type": "string", "format": "uri", "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 + "https://api.github.com/users/octocat/followers" ] }, - "default_branch": { - "description": "The default branch of the repository.", + "following_url": { "type": "string", "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", + "gists_url": { + "type": "string", "examples": [ - true + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "topics": { - "type": "array", - "items": { - "type": "string" - } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", + "starred_url": { + "type": "string", "examples": [ - true + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", + "subscriptions_url": { + "type": "string", + "format": "uri", "examples": [ - true + "https://api.github.com/users/octocat/subscriptions" ] }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", + "organizations_url": { + "type": "string", + "format": "uri", "examples": [ - true + "https://api.github.com/users/octocat/orgs" ] }, - "has_pages": { - "type": "boolean" - }, - "has_downloads": { - "description": "Whether downloads are enabled.", - "default": true, - "type": "boolean", - "deprecated": true, + "repos_url": { + "type": "string", + "format": "uri", "examples": [ - true + "https://api.github.com/users/octocat/repos" ] }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", + "events_url": { + "type": "string", "examples": [ - true + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", + "received_events_url": { + "type": "string", + "format": "uri", "examples": [ - true + "https://api.github.com/users/octocat/received_events" ] }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": { "type": "string", - "enum": [ - "all", - "collaborators_only" - ], "examples": [ - "all" + "User" ] }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, + "site_admin": { "type": "boolean" }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "use_squash_pr_title_as_default": { - "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", - "default": false, - "deprecated": true - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { + "starred_at": { "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", "examples": [ - true + "\"2020-07-09T00:17:55Z\"" ] }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "master_branch": { - "type": "string" - }, - "starred_at": { + "user_view_type": { "type": "string", "examples": [ - "\"2020-07-09T00:17:42Z\"" + "public" ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { + } + }, + "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" + ] + } + ] + }, + "comments": { + "type": "integer", + "examples": [ + 10 + ] + }, + "review_comments": { + "type": "integer", + "examples": [ + 0 + ] + }, + "maintainer_can_modify": { + "description": "Indicates whether maintainers can modify the pull request.", + "type": "boolean", + "examples": [ + true + ] + }, + "commits": { + "type": "integer", + "examples": [ + 3 + ] + }, + "additions": { + "type": "integer", + "examples": [ + 100 + ] + }, + "deletions": { + "type": "integer", + "examples": [ + 3 + ] + }, + "changed_files": { + "type": "integer", + "examples": [ + 5 + ] + } + }, + "required": [ + "_links", + "assignee", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merge_commit_sha", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge", + "additions", + "changed_files", + "comments", + "commits", + "deletions", + "mergeable", + "mergeable_state", + "merged", + "maintainer_can_modify", + "merged_by", + "review_comments" + ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347", + "id": 1, + "node_id": "MDExOlB1bGxSZXF1ZXN0MQ==", + "html_url": "https://github.com/octocat/Hello-World/pull/1347", + "diff_url": "https://github.com/octocat/Hello-World/pull/1347.diff", + "patch_url": "https://github.com/octocat/Hello-World/pull/1347.patch", + "issue_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits", + "review_comments_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments", + "review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e", + "number": 1347, + "state": "open", + "locked": true, + "title": "Amazing new feature", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Please pull these awesome changes in!", + "labels": [ + { + "id": 208045946, + "node_id": "MDU6TGFiZWwyMDgwNDU5NDY=", + "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", + "name": "bug", + "description": "Something isn't working", + "color": "f29513", + "default": true + } + ], + "milestone": { + "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", + "html_url": "https://github.com/octocat/Hello-World/milestones/v1.0", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels", + "id": 1002604, + "node_id": "MDk6TWlsZXN0b25lMTAwMjYwNA==", + "number": 1, + "state": "open", + "title": "v1.0", + "description": "Tracking milestone for version 1.0", + "creator": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "open_issues": 4, + "closed_issues": 8, + "created_at": "2011-04-10T20:09:31Z", + "updated_at": "2014-03-03T18:58:10Z", + "closed_at": "2013-02-12T13:22:01Z", + "due_on": "2012-10-09T23:39:01Z" + }, + "active_lock_reason": "too heated", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:01:12Z", + "closed_at": "2011-01-26T19:01:12Z", + "merged_at": "2011-01-26T19:01:12Z", + "merge_commit_sha": "e5bd3914e2e596debea16f433f57875b5b90bcd6", + "assignee": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + { + "login": "hubot", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/hubot_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/hubot", + "html_url": "https://github.com/hubot", + "followers_url": "https://api.github.com/users/hubot/followers", + "following_url": "https://api.github.com/users/hubot/following{/other_user}", + "gists_url": "https://api.github.com/users/hubot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/hubot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/hubot/subscriptions", + "organizations_url": "https://api.github.com/users/hubot/orgs", + "repos_url": "https://api.github.com/users/hubot/repos", + "events_url": "https://api.github.com/users/hubot/events{/privacy}", + "received_events_url": "https://api.github.com/users/hubot/received_events", + "type": "User", + "site_admin": true + } + ], + "requested_reviewers": [ + { + "login": "other_user", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/other_user_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/other_user", + "html_url": "https://github.com/other_user", + "followers_url": "https://api.github.com/users/other_user/followers", + "following_url": "https://api.github.com/users/other_user/following{/other_user}", + "gists_url": "https://api.github.com/users/other_user/gists{/gist_id}", + "starred_url": "https://api.github.com/users/other_user/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/other_user/subscriptions", + "organizations_url": "https://api.github.com/users/other_user/orgs", + "repos_url": "https://api.github.com/users/other_user/repos", + "events_url": "https://api.github.com/users/other_user/events{/privacy}", + "received_events_url": "https://api.github.com/users/other_user/received_events", + "type": "User", + "site_admin": false + } + ], + "requested_teams": [ + { + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "name": "Justice League", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "permission": "admin", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos" + } + ], + "head": { + "label": "octocat:new-topic", + "ref": "new-topic", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "repo": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "has_discussions": false, + "archived": false, + "disabled": false, + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_merge_commit": true, + "allow_forking": true, + "forks": 123, + "open_issues": 123, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==" + }, + "watchers": 123 + } + }, + "base": { + "label": "octocat:master", + "ref": "master", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "repo": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "has_discussions": false, + "archived": false, + "disabled": false, + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_merge_commit": true, + "forks": 123, + "open_issues": 123, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==" + }, + "watchers": 123 + } + }, + "_links": { + "self": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347" + }, + "html": { + "href": "https://github.com/octocat/Hello-World/pull/1347" + }, + "issue": { + "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347" + }, + "comments": { + "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" + }, + "review_comments": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" + }, + "review_comment": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" + }, + "commits": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + }, + "statuses": { + "href": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + } + }, + "author_association": "OWNER", + "auto_merge": null, + "draft": false, + "merged": false, + "mergeable": true, + "rebaseable": true, + "mergeable_state": "clean", + "merged_by": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "comments": 10, + "review_comments": 0, + "maintainer_can_modify": true, + "commits": 3, + "additions": 100, + "deletions": 3, + "changed_files": 5 + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { "type": "string" } } - } - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" + ] + } + } + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "pulls" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/codespaces": { + "post": { + "summary": "Create a codespace from a pull request", + "description": "Creates a codespace owned by the authenticated user for the specified pull request.\n\nOAuth app tokens and personal access tokens (classic) need the `codespace` scope to use this endpoint.", + "tags": [ + "codespaces" + ], + "operationId": "codespaces/create-with-pr-for-authenticated-user", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/codespaces/codespaces#create-a-codespace-from-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": [ + "object", + "null" + ], + "properties": { + "location": { + "description": "The requested location for a new codespace. Best efforts are made to respect this upon creation. Assigned by IP if not provided.", + "type": "string" + }, + "geo": { + "description": "The geographic area for this codespace. If not specified, the value is assigned by IP. This property replaces `location`, which is closing down.", + "type": "string", + "enum": [ + "EuropeWest", + "SoutheastAsia", + "UsEast", + "UsWest" + ] + }, + "client_ip": { + "description": "IP for location auto-detection when proxying a request", + "type": "string" + }, + "machine": { + "description": "Machine type to use for this codespace", + "type": "string" + }, + "devcontainer_path": { + "description": "Path to devcontainer.json config to use for this codespace", + "type": "string" + }, + "multi_repo_permissions_opt_out": { + "description": "Whether to authorize requested permissions from devcontainer.json", + "type": "boolean" + }, + "working_directory": { + "description": "Working directory for this codespace", + "type": "string" + }, + "idle_timeout_minutes": { + "description": "Time in minutes before codespace stops from inactivity", + "type": "integer" + }, + "display_name": { + "description": "Display name for this codespace", + "type": "string" + }, + "retention_period_minutes": { + "description": "Duration in minutes after codespace has gone idle in which it will be deleted. Must be integer minutes between 0 and 43200 (30 days).", + "type": "integer" + } + } + }, + "examples": { + "default": { + "value": { + "repository_id": 1, + "ref": "main" + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Response when the codespace was successfully created", + "content": { + "application/json": { + "schema": { + "type": "object", + "title": "Codespace", + "description": "A codespace.", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "name": { + "description": "Automatically generated name of this codespace.", + "type": "string", + "examples": [ + "monalisa-octocat-hello-world-g4wpq6h95q" + ] + }, + "display_name": { + "description": "Display name for this codespace.", + "type": [ + "string", + "null" + ], + "examples": [ + "bookish space pancake" + ] + }, + "environment_id": { + "description": "UUID identifying this codespace's environment.", + "type": [ + "string", + "null" + ], + "examples": [ + "26a7c758-7299-4a73-b978-5a92a7ae98a0" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" ] }, - "sha": { - "type": "string" + "email": { + "type": [ + "string", + "null" + ] }, - "user": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } }, "required": [ - "label", - "ref", - "repo", - "sha", - "user" + "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" ] }, - "_links": { + "billable_owner": { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "comments": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "name": { + "type": [ + "string", + "null" ] }, - "commits": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" ] }, - "statuses": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "html": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" ] }, - "issue": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "type": { + "type": "string", + "examples": [ + "User" ] }, - "review_comments": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] + "site_admin": { + "type": "boolean" }, - "review_comment": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" ] }, - "self": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } }, "required": [ - "comments", - "commits", - "statuses", - "html", - "issue", - "review_comments", - "review_comment", - "self" - ] - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" + "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" ] }, - "auto_merge": { - "title": "Auto merge", - "description": "The status of auto merging a pull request.", - "type": [ - "object", - "null" - ], + "repository": { + "title": "Minimal Repository", + "description": "Minimal Repository", + "type": "object", "properties": { - "enabled_by": { + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1296269 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "type": "string", + "examples": [ + "Hello-World" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "owner": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -639030,395 +649246,1093 @@ "url" ] }, - "merge_method": { + "private": { + "type": "boolean" + }, + "html_url": { "type": "string", - "description": "The merge method to use.", - "enum": [ - "merge", - "squash", - "rebase" + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" ] }, - "commit_title": { + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { "type": "string", - "description": "Title for the merge commit message." + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] }, - "commit_message": { + "archive_url": { "type": "string", - "description": "Commit message for the merge commit." - } - }, - "required": [ - "enabled_by", - "merge_method", - "commit_title", - "commit_message" - ] - }, - "stack": { - "title": "Pull Request Stack", - "description": "The stack information associated with a pull request.", - "type": [ - "object", - "null" - ], - "properties": { - "base": { + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string" + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string" + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string" + }, + "mirror_url": { + "type": [ + "string", + "null" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "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" + }, + "has_pull_requests": { + "type": "boolean" + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ] + }, + "archived": { + "type": "boolean" + }, + "disabled": { + "type": "boolean" + }, + "visibility": { + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "permissions": { "type": "object", "properties": { - "ref": { - "type": "string", - "description": "The base ref of the stack this pull request belongs to." + "admin": { + "type": "boolean" }, - "sha": { - "type": "string", - "description": "The base SHA of the stack this pull request belongs to." + "maintain": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "pull": { + "type": "boolean" } - }, - "required": [ - "ref", - "sha" + } + }, + "role_name": { + "type": "string", + "examples": [ + "admin" ] }, - "size": { - "type": "integer", - "description": "The total number of pull requests in the stack." + "temp_clone_token": { + "type": "string" }, - "position": { - "type": "integer", - "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + "delete_branch_on_merge": { + "type": "boolean" }, - "id": { - "type": "integer", - "description": "The ID of the stack that this pull request belongs to." + "subscribers_count": { + "type": "integer" }, - "number": { - "type": "integer", - "description": "The number of the stack that this pull request belongs to." - } - }, - "required": [ - "base" - ] - }, - "draft": { - "description": "Indicates whether or not the pull request is a draft.", - "type": "boolean", - "examples": [ - false - ] - }, - "merged": { - "type": "boolean" - }, - "mergeable": { - "type": [ - "boolean", - "null" - ], - "examples": [ - true - ] - }, - "rebaseable": { - "type": [ - "boolean", - "null" - ], - "examples": [ - true - ] - }, - "mergeable_state": { - "type": "string", - "examples": [ - "clean" - ] - }, - "merged_by": { - "anyOf": [ - { - "type": "null" + "network_count": { + "type": "integer" }, - { - "title": "Simple User", - "description": "A GitHub user.", + "code_of_conduct": { + "title": "Code Of Conduct", + "description": "Code Of Conduct", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { + "key": { "type": "string", "examples": [ - "octocat" + "contributor_covenant" ] }, - "id": { - "type": "integer", - "format": "int64", + "name": { + "type": "string", "examples": [ - 1 + "Contributor Covenant" ] }, - "node_id": { + "url": { "type": "string", + "format": "uri", "examples": [ - "MDQ6VXNlcjE=" + "https://api.github.com/codes_of_conduct/contributor_covenant" ] }, - "avatar_url": { + "body": { "type": "string", - "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "# Contributor Covenant Code of Conduct\n\n## Our Pledge\n\nIn the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.\n\n## Our Standards\n\nExamples of behavior that contributes to creating a positive environment include:\n\n* Using welcoming and inclusive language\n* Being respectful of differing viewpoints and experiences\n* Gracefully accepting constructive criticism\n* Focusing on what is best for the community\n* Showing empathy towards other community members\n\nExamples of unacceptable behavior by participants include:\n\n* The use of sexualized language or imagery and unwelcome sexual attention or advances\n* Trolling, insulting/derogatory comments, and personal or political attacks\n* Public or private harassment\n* Publishing others' private information, such as a physical or electronic address, without explicit permission\n* Other conduct which could reasonably be considered inappropriate in a professional setting\n\n## Our Responsibilities\n\nProject maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response\n to any instances of unacceptable behavior.\n\nProject maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.\n\n## Scope\n\nThis Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address,\n posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.\n\n## Enforcement\n\nInstances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at [EMAIL]. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.\n\nProject maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.\n\n## Attribution\n\nThis Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.4, available at [http://contributor-covenant.org/version/1/4](http://contributor-covenant.org/version/1/4/).\n" ] }, - "gravatar_id": { + "html_url": { "type": [ "string", "null" ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] + "format": "uri" + } + }, + "required": [ + "url", + "html_url", + "key", + "name" + ] + }, + "license": { + "type": [ + "object", + "null" + ], + "properties": { + "key": { + "type": "string" + }, + "name": { + "type": "string" + }, + "spdx_id": { + "type": "string" }, "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" + "type": [ + "string", + "null" ] }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] + "node_id": { + "type": "string" + } + } + }, + "forks": { + "type": "integer", + "examples": [ + 0 + ] + }, + "open_issues": { + "type": "integer", + "examples": [ + 0 + ] + }, + "watchers": { + "type": "integer", + "examples": [ + 0 + ] + }, + "allow_forking": { + "type": "boolean" + }, + "web_commit_signoff_required": { + "type": "boolean", + "examples": [ + false + ] + }, + "security_and_analysis": { + "type": [ + "object", + "null" + ], + "properties": { + "advanced_security": { + "description": "Enable or disable GitHub Advanced Security for the repository.\n\nFor standalone Code Scanning or Secret Protection products, this parameter cannot be used.\n", + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] + "code_security": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] + "dependabot_security_updates": { + "description": "Enable or disable Dependabot security updates for the repository.", + "type": "object", + "properties": { + "status": { + "description": "The enablement status of Dependabot security updates for the repository.", + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] + "secret_scanning": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] + "secret_scanning_push_protection": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] + "secret_scanning_non_provider_patterns": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } }, - "organizations_url": { + "secret_scanning_ai_detection": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_delegated_alert_dismissal": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_delegated_bypass": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_delegated_bypass_options": { + "type": "object", + "properties": { + "reviewers": { + "type": "array", + "description": "The bypass reviewers for secret scanning delegated bypass", + "items": { + "type": "object", + "required": [ + "reviewer_id", + "reviewer_type" + ], + "properties": { + "reviewer_id": { + "type": "integer", + "description": "The ID of the team or role selected as a bypass reviewer" + }, + "reviewer_type": { + "type": "string", + "description": "The type of the bypass reviewer", + "enum": [ + "TEAM", + "ROLE" + ] + }, + "mode": { + "type": "string", + "description": "The bypass mode for the reviewer", + "enum": [ + "ALWAYS", + "EXEMPT" + ], + "default": "ALWAYS" + } + } + } + } + } + } + } + }, + "custom_properties": { + "type": "object", + "description": "The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values.", + "additionalProperties": true + } + }, + "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" + ] + }, + "machine": { + "anyOf": [ + { + "type": "null" + }, + { + "type": "object", + "title": "Codespace machine", + "description": "A description of the machine powering a codespace.", + "properties": { + "name": { "type": "string", - "format": "uri", + "description": "The name of the machine.", "examples": [ - "https://api.github.com/users/octocat/orgs" + "standardLinux" ] }, - "repos_url": { + "display_name": { "type": "string", - "format": "uri", + "description": "The display name of the machine includes cores, memory, and storage.", "examples": [ - "https://api.github.com/users/octocat/repos" + "4 cores, 16 GB RAM, 64 GB storage" ] }, - "events_url": { + "operating_system": { "type": "string", + "description": "The operating system of the machine.", "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "linux" ] }, - "received_events_url": { - "type": "string", - "format": "uri", + "storage_in_bytes": { + "type": "integer", + "description": "How much storage is available to the codespace.", "examples": [ - "https://api.github.com/users/octocat/received_events" + 68719476736 ] }, - "type": { - "type": "string", + "memory_in_bytes": { + "type": "integer", + "description": "How much memory is available to the codespace.", "examples": [ - "User" + 17179869184 ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", + "cpus": { + "type": "integer", + "description": "How many cores are available to the codespace.", "examples": [ - "\"2020-07-09T00:17:55Z\"" + 4 ] }, - "user_view_type": { - "type": "string", + "prebuild_availability": { + "type": [ + "string", + "null" + ], + "description": "Whether a prebuild is currently available when creating a codespace for this machine and repository. If a branch was not specified as a ref, the default branch will be assumed. Value will be \"null\" if prebuilds are not supported or prebuild availability could not be determined. Value will be \"none\" if no prebuild is available. Latest values \"ready\" and \"in_progress\" indicate the prebuild availability status.", + "enum": [ + "none", + "ready", + "in_progress", + null + ], "examples": [ - "public" + "ready" ] } }, "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" + "name", + "display_name", + "operating_system", + "storage_in_bytes", + "memory_in_bytes", + "cpus", + "prebuild_availability" ] } ] }, - "comments": { - "type": "integer", + "devcontainer_path": { + "description": "Path to devcontainer.json from repo root used to create Codespace.", + "type": [ + "string", + "null" + ], "examples": [ - 10 + ".devcontainer/example/devcontainer.json" ] }, - "review_comments": { - "type": "integer", + "prebuild": { + "description": "Whether the codespace was created from a prebuild.", + "type": [ + "boolean", + "null" + ], "examples": [ - 0 + false ] }, - "maintainer_can_modify": { - "description": "Indicates whether maintainers can modify the pull request.", - "type": "boolean", + "created_at": { + "type": "string", + "format": "date-time", "examples": [ - true + "2011-01-26T19:01:12Z" ] }, - "commits": { - "type": "integer", + "updated_at": { + "type": "string", + "format": "date-time", "examples": [ - 3 + "2011-01-26T19:01:12Z" ] }, - "additions": { - "type": "integer", + "last_used_at": { + "description": "Last known time this codespace was started.", + "type": "string", + "format": "date-time", "examples": [ - 100 + "2011-01-26T19:01:12Z" ] }, - "deletions": { - "type": "integer", + "state": { + "description": "State of this codespace.", + "enum": [ + "Unknown", + "Created", + "Queued", + "Provisioning", + "Available", + "Awaiting", + "Unavailable", + "Deleted", + "Moved", + "Shutdown", + "Archived", + "Starting", + "ShuttingDown", + "Failed", + "Exporting", + "Updating", + "Rebuilding" + ], + "type": "string", "examples": [ - 3 + "Available" ] }, - "changed_files": { - "type": "integer", + "url": { + "description": "API URL for this codespace.", + "type": "string", + "format": "uri" + }, + "git_status": { + "description": "Details about the codespace's git repository.", + "type": "object", + "properties": { + "ahead": { + "description": "The number of commits the local repository is ahead of the remote.", + "type": "integer", + "examples": [ + 0 + ] + }, + "behind": { + "description": "The number of commits the local repository is behind the remote.", + "type": "integer", + "examples": [ + 0 + ] + }, + "has_unpushed_changes": { + "description": "Whether the local repository has unpushed changes.", + "type": "boolean" + }, + "has_uncommitted_changes": { + "description": "Whether the local repository has uncommitted changes.", + "type": "boolean" + }, + "ref": { + "description": "The current branch (or SHA if in detached HEAD state) of the local repository.", + "type": "string", + "examples": [ + "main" + ] + } + } + }, + "location": { + "description": "The initally assigned location of a new codespace.", + "enum": [ + "EastUs", + "SouthEastAsia", + "WestEurope", + "WestUs2" + ], + "type": "string", "examples": [ - 5 + "WestUs2" + ] + }, + "idle_timeout_minutes": { + "description": "The number of minutes of inactivity after which this codespace will be automatically stopped.", + "type": [ + "integer", + "null" + ], + "examples": [ + 60 + ] + }, + "web_url": { + "description": "URL to access this codespace on the web.", + "type": "string", + "format": "uri" + }, + "machines_url": { + "description": "API URL to access available alternate machine types for this codespace.", + "type": "string", + "format": "uri" + }, + "start_url": { + "description": "API URL to start this codespace.", + "type": "string", + "format": "uri" + }, + "stop_url": { + "description": "API URL to stop this codespace.", + "type": "string", + "format": "uri" + }, + "publish_url": { + "description": "API URL to publish this codespace to a new repository.", + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "pulls_url": { + "description": "API URL for the Pull Request associated with this codespace, if any.", + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "recent_folders": { + "type": "array", + "items": { + "type": "string" + } + }, + "runtime_constraints": { + "type": "object", + "properties": { + "allowed_port_privacy_settings": { + "description": "The privacy settings a user can select from when forwarding a port.", + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + } + }, + "pending_operation": { + "description": "Whether or not a codespace has a pending async operation. This would mean that the codespace is temporarily unavailable. The only thing that you can do with a codespace in this state is delete it.", + "type": [ + "boolean", + "null" + ] + }, + "pending_operation_disabled_reason": { + "description": "Text to show user when codespace is disabled by a pending operation", + "type": [ + "string", + "null" + ] + }, + "idle_timeout_notice": { + "description": "Text to show user when codespace idle timeout minutes has been overriden by an organization policy", + "type": [ + "string", + "null" + ] + }, + "retention_period_minutes": { + "description": "Duration in minutes after codespace has gone idle in which it will be deleted. Must be integer minutes between 0 and 43200 (30 days).", + "type": [ + "integer", + "null" + ], + "examples": [ + 60 + ] + }, + "retention_expires_at": { + "description": "When a codespace will be auto-deleted based on the \"retention_period_minutes\" and \"last_used_at\"", + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T20:01:12Z" + ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" ] } }, "required": [ - "_links", - "assignee", - "labels", - "base", - "body", - "closed_at", - "comments_url", - "commits_url", - "created_at", - "diff_url", - "head", - "html_url", "id", - "node_id", - "issue_url", - "merge_commit_sha", - "merged_at", - "milestone", - "number", - "patch_url", - "review_comment_url", - "review_comments_url", - "statuses_url", - "state", - "locked", - "title", + "name", + "environment_id", + "owner", + "billable_owner", + "repository", + "machine", + "prebuild", + "created_at", "updated_at", + "last_used_at", + "state", "url", - "user", - "author_association", - "auto_merge", - "additions", - "changed_files", - "comments", - "commits", - "deletions", - "mergeable", - "mergeable_state", - "merged", - "maintainer_can_modify", - "merged_by", - "review_comments" + "git_status", + "location", + "idle_timeout_minutes", + "web_url", + "machines_url", + "start_url", + "stop_url", + "pulls_url", + "recent_folders" ] }, "examples": { "default": { "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347", "id": 1, - "node_id": "MDExOlB1bGxSZXF1ZXN0MQ==", - "html_url": "https://github.com/octocat/Hello-World/pull/1347", - "diff_url": "https://github.com/octocat/Hello-World/pull/1347.diff", - "patch_url": "https://github.com/octocat/Hello-World/pull/1347.patch", - "issue_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits", - "review_comments_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments", - "review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e", - "number": 1347, - "state": "open", - "locked": true, - "title": "Amazing new feature", - "user": { + "name": "monalisa-octocat-hello-world-g4wpq6h95q", + "environment_id": "26a7c758-7299-4a73-b978-5a92a7ae98a0", + "owner": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -639438,62 +650352,7 @@ "type": "User", "site_admin": false }, - "body": "Please pull these awesome changes in!", - "labels": [ - { - "id": 208045946, - "node_id": "MDU6TGFiZWwyMDgwNDU5NDY=", - "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", - "name": "bug", - "description": "Something isn't working", - "color": "f29513", - "default": true - } - ], - "milestone": { - "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", - "html_url": "https://github.com/octocat/Hello-World/milestones/v1.0", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels", - "id": 1002604, - "node_id": "MDk6TWlsZXN0b25lMTAwMjYwNA==", - "number": 1, - "state": "open", - "title": "v1.0", - "description": "Tracking milestone for version 1.0", - "creator": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "open_issues": 4, - "closed_issues": 8, - "created_at": "2011-04-10T20:09:31Z", - "updated_at": "2014-03-03T18:58:10Z", - "closed_at": "2013-02-12T13:22:01Z", - "due_on": "2012-10-09T23:39:01Z" - }, - "active_lock_reason": "too heated", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:01:12Z", - "closed_at": "2011-01-26T19:01:12Z", - "merged_at": "2011-01-26T19:01:12Z", - "merge_commit_sha": "e5bd3914e2e596debea16f433f57875b5b90bcd6", - "assignee": { + "billable_owner": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -639513,233 +650372,12 @@ "type": "User", "site_admin": false }, - "assignees": [ - { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - { - "login": "hubot", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/hubot_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/hubot", - "html_url": "https://github.com/hubot", - "followers_url": "https://api.github.com/users/hubot/followers", - "following_url": "https://api.github.com/users/hubot/following{/other_user}", - "gists_url": "https://api.github.com/users/hubot/gists{/gist_id}", - "starred_url": "https://api.github.com/users/hubot/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/hubot/subscriptions", - "organizations_url": "https://api.github.com/users/hubot/orgs", - "repos_url": "https://api.github.com/users/hubot/repos", - "events_url": "https://api.github.com/users/hubot/events{/privacy}", - "received_events_url": "https://api.github.com/users/hubot/received_events", - "type": "User", - "site_admin": true - } - ], - "requested_reviewers": [ - { - "login": "other_user", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/other_user_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/other_user", - "html_url": "https://github.com/other_user", - "followers_url": "https://api.github.com/users/other_user/followers", - "following_url": "https://api.github.com/users/other_user/following{/other_user}", - "gists_url": "https://api.github.com/users/other_user/gists{/gist_id}", - "starred_url": "https://api.github.com/users/other_user/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/other_user/subscriptions", - "organizations_url": "https://api.github.com/users/other_user/orgs", - "repos_url": "https://api.github.com/users/other_user/repos", - "events_url": "https://api.github.com/users/other_user/events{/privacy}", - "received_events_url": "https://api.github.com/users/other_user/received_events", - "type": "User", - "site_admin": false - } - ], - "requested_teams": [ - { - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "name": "Justice League", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "permission": "admin", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos" - } - ], - "head": { - "label": "octocat:new-topic", - "ref": "new-topic", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "repo": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "has_discussions": false, - "archived": false, - "disabled": false, - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_merge_commit": true, - "allow_forking": true, - "forks": 123, - "open_issues": 123, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==" - }, - "watchers": 123 - } - }, - "base": { - "label": "octocat:master", - "ref": "master", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "user": { + "repository": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -639759,412 +650397,91 @@ "type": "User", "site_admin": false }, - "repo": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "has_discussions": false, - "archived": false, - "disabled": false, - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_merge_commit": true, - "forks": 123, - "open_issues": 123, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==" - }, - "watchers": 123 - } - }, - "_links": { - "self": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347" - }, - "html": { - "href": "https://github.com/octocat/Hello-World/pull/1347" - }, - "issue": { - "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347" - }, - "comments": { - "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" - }, - "review_comments": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" - }, - "review_comment": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" - }, - "commits": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" - }, - "statuses": { - "href": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" - } - }, - "author_association": "OWNER", - "auto_merge": null, - "draft": false, - "merged": false, - "mergeable": true, - "rebaseable": true, - "mergeable_state": "clean", - "merged_by": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "hooks_url": "http://api.github.com/repos/octocat/Hello-World/hooks" }, - "comments": 10, - "review_comments": 0, - "maintainer_can_modify": true, - "commits": 3, - "additions": 100, - "deletions": 3, - "changed_files": 5 - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" + "machine": { + "name": "standardLinux", + "display_name": "4 cores, 16 GB RAM, 64 GB storage", + "operating_system": "linux", + "storage_in_bytes": 68719476736, + "memory_in_bytes": 17179869184, + "cpus": 4 + }, + "prebuild": false, + "devcontainer_path": ".devcontainer/devcontainer.json", + "created_at": "2021-10-14T00:53:30-06:00", + "updated_at": "2021-10-14T00:53:32-06:00", + "last_used_at": "2021-10-14T00:53:30-06:00", + "state": "Available", + "url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q", + "git_status": { + "ahead": 0, + "behind": 0, + "has_unpushed_changes": false, + "has_uncommitted_changes": false, + "ref": "main" + }, + "location": "WestUs2", + "idle_timeout_minutes": 60, + "retention_period_minutes": 43200, + "retention_expires_at": null, + "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", + "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", + "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", + "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", + "recent_folders": [], + "template": null } } } } } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "pulls" - } - } - }, - "/repos/{owner}/{repo}/pulls/{pull_number}/codespaces": { - "post": { - "summary": "Create a codespace from a pull request", - "description": "Creates a codespace owned by the authenticated user for the specified pull request.\n\nOAuth app tokens and personal access tokens (classic) need the `codespace` scope to use this endpoint.", - "tags": [ - "codespaces" - ], - "operationId": "codespaces/create-with-pr-for-authenticated-user", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/codespaces/codespaces#create-a-codespace-from-a-pull-request" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } }, - { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": [ - "object", - "null" - ], - "properties": { - "location": { - "description": "The requested location for a new codespace. Best efforts are made to respect this upon creation. Assigned by IP if not provided.", - "type": "string" - }, - "geo": { - "description": "The geographic area for this codespace. If not specified, the value is assigned by IP. This property replaces `location`, which is closing down.", - "type": "string", - "enum": [ - "EuropeWest", - "SoutheastAsia", - "UsEast", - "UsWest" - ] - }, - "client_ip": { - "description": "IP for location auto-detection when proxying a request", - "type": "string" - }, - "machine": { - "description": "Machine type to use for this codespace", - "type": "string" - }, - "devcontainer_path": { - "description": "Path to devcontainer.json config to use for this codespace", - "type": "string" - }, - "multi_repo_permissions_opt_out": { - "description": "Whether to authorize requested permissions from devcontainer.json", - "type": "boolean" - }, - "working_directory": { - "description": "Working directory for this codespace", - "type": "string" - }, - "idle_timeout_minutes": { - "description": "Time in minutes before codespace stops from inactivity", - "type": "integer" - }, - "display_name": { - "description": "Display name for this codespace", - "type": "string" - }, - "retention_period_minutes": { - "description": "Duration in minutes after codespace has gone idle in which it will be deleted. Must be integer minutes between 0 and 43200 (30 days).", - "type": "integer" - } - } - }, - "examples": { - "default": { - "value": { - "repository_id": 1, - "ref": "main" - } - } - } - } - } - }, - "responses": { - "201": { - "description": "Response when the codespace was successfully created", + "202": { + "description": "Response when the codespace creation partially failed but is being retried in the background", "content": { "application/json": { "schema": { @@ -641653,225 +651970,1072 @@ "description": "Whether the local repository has uncommitted changes.", "type": "boolean" }, - "ref": { - "description": "The current branch (or SHA if in detached HEAD state) of the local repository.", - "type": "string", - "examples": [ - "main" - ] - } - } - }, - "location": { - "description": "The initally assigned location of a new codespace.", - "enum": [ - "EastUs", - "SouthEastAsia", - "WestEurope", - "WestUs2" - ], - "type": "string", - "examples": [ - "WestUs2" - ] - }, - "idle_timeout_minutes": { - "description": "The number of minutes of inactivity after which this codespace will be automatically stopped.", - "type": [ - "integer", - "null" - ], - "examples": [ - 60 - ] - }, - "web_url": { - "description": "URL to access this codespace on the web.", - "type": "string", - "format": "uri" - }, - "machines_url": { - "description": "API URL to access available alternate machine types for this codespace.", - "type": "string", - "format": "uri" - }, - "start_url": { - "description": "API URL to start this codespace.", - "type": "string", - "format": "uri" - }, - "stop_url": { - "description": "API URL to stop this codespace.", - "type": "string", - "format": "uri" - }, - "publish_url": { - "description": "API URL to publish this codespace to a new repository.", - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "pulls_url": { - "description": "API URL for the Pull Request associated with this codespace, if any.", - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "recent_folders": { - "type": "array", - "items": { + "ref": { + "description": "The current branch (or SHA if in detached HEAD state) of the local repository.", + "type": "string", + "examples": [ + "main" + ] + } + } + }, + "location": { + "description": "The initally assigned location of a new codespace.", + "enum": [ + "EastUs", + "SouthEastAsia", + "WestEurope", + "WestUs2" + ], + "type": "string", + "examples": [ + "WestUs2" + ] + }, + "idle_timeout_minutes": { + "description": "The number of minutes of inactivity after which this codespace will be automatically stopped.", + "type": [ + "integer", + "null" + ], + "examples": [ + 60 + ] + }, + "web_url": { + "description": "URL to access this codespace on the web.", + "type": "string", + "format": "uri" + }, + "machines_url": { + "description": "API URL to access available alternate machine types for this codespace.", + "type": "string", + "format": "uri" + }, + "start_url": { + "description": "API URL to start this codespace.", + "type": "string", + "format": "uri" + }, + "stop_url": { + "description": "API URL to stop this codespace.", + "type": "string", + "format": "uri" + }, + "publish_url": { + "description": "API URL to publish this codespace to a new repository.", + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "pulls_url": { + "description": "API URL for the Pull Request associated with this codespace, if any.", + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "recent_folders": { + "type": "array", + "items": { + "type": "string" + } + }, + "runtime_constraints": { + "type": "object", + "properties": { + "allowed_port_privacy_settings": { + "description": "The privacy settings a user can select from when forwarding a port.", + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + } + }, + "pending_operation": { + "description": "Whether or not a codespace has a pending async operation. This would mean that the codespace is temporarily unavailable. The only thing that you can do with a codespace in this state is delete it.", + "type": [ + "boolean", + "null" + ] + }, + "pending_operation_disabled_reason": { + "description": "Text to show user when codespace is disabled by a pending operation", + "type": [ + "string", + "null" + ] + }, + "idle_timeout_notice": { + "description": "Text to show user when codespace idle timeout minutes has been overriden by an organization policy", + "type": [ + "string", + "null" + ] + }, + "retention_period_minutes": { + "description": "Duration in minutes after codespace has gone idle in which it will be deleted. Must be integer minutes between 0 and 43200 (30 days).", + "type": [ + "integer", + "null" + ], + "examples": [ + 60 + ] + }, + "retention_expires_at": { + "description": "When a codespace will be auto-deleted based on the \"retention_period_minutes\" and \"last_used_at\"", + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T20:01:12Z" + ] + }, + "last_known_stop_notice": { + "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", + "type": [ + "string", + "null" + ], + "examples": [ + "you've used 100% of your spending limit for Codespaces" + ] + } + }, + "required": [ + "id", + "name", + "environment_id", + "owner", + "billable_owner", + "repository", + "machine", + "prebuild", + "created_at", + "updated_at", + "last_used_at", + "state", + "url", + "git_status", + "location", + "idle_timeout_minutes", + "web_url", + "machines_url", + "start_url", + "stop_url", + "pulls_url", + "recent_folders" + ] + }, + "examples": { + "default": { + "value": { + "id": 1, + "name": "monalisa-octocat-hello-world-g4wpq6h95q", + "environment_id": "26a7c758-7299-4a73-b978-5a92a7ae98a0", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "billable_owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "repository": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "hooks_url": "http://api.github.com/repos/octocat/Hello-World/hooks" + }, + "machine": { + "name": "standardLinux", + "display_name": "4 cores, 16 GB RAM, 64 GB storage", + "operating_system": "linux", + "storage_in_bytes": 68719476736, + "memory_in_bytes": 17179869184, + "cpus": 4 + }, + "prebuild": false, + "devcontainer_path": ".devcontainer/devcontainer.json", + "created_at": "2021-10-14T00:53:30-06:00", + "updated_at": "2021-10-14T00:53:32-06:00", + "last_used_at": "2021-10-14T00:53:30-06:00", + "state": "Available", + "url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q", + "git_status": { + "ahead": 0, + "behind": 0, + "has_unpushed_changes": false, + "has_uncommitted_changes": false, + "ref": "main" + }, + "location": "WestUs2", + "idle_timeout_minutes": 60, + "retention_period_minutes": 43200, + "retention_expires_at": null, + "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", + "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", + "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", + "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", + "recent_folders": [], + "template": null + } + } + } + } + } + }, + "401": { + "description": "Requires authentication", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": false, + "category": "codespaces", + "subcategory": "codespaces" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/comments": { + "get": { + "summary": "List review comments on a pull request", + "description": "Lists all review comments for a specified pull request. By default, review comments\nare in ascending order by ID.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/list-review-comments", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/comments#list-review-comments-on-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "sort", + "description": "The property to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created", + "updated" + ], + "default": "created" + } + }, + { + "name": "direction", + "description": "The direction to sort results. Ignored without `sort` parameter.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ] + } + }, + { + "name": "since", + "description": "Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "format": "date-time" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Pull Request Review Comment", + "description": "Pull Request Review Comments are comments on a portion of the Pull Request's diff.", + "type": "object", + "properties": { + "url": { + "description": "URL for the pull request review comment", + "type": "string", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + ] + }, + "pull_request_review_id": { + "description": "The ID of the pull request review to which the comment belongs.", + "type": [ + "integer", + "null" + ], + "format": "int64", + "examples": [ + 42 + ] + }, + "id": { + "description": "The ID of the pull request review comment.", + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "description": "The node ID of the pull request review comment.", + "type": "string", + "examples": [ + "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw" + ] + }, + "diff_hunk": { + "description": "The diff of the line that the comment refers to.", + "type": "string", + "examples": [ + "@@ -16,33 +16,40 @@ public class Connection : IConnection..." + ] + }, + "path": { + "description": "The relative path of the file to which the comment applies.", + "type": "string", + "examples": [ + "config/database.yaml" + ] + }, + "position": { + "description": "The line index in the diff to which the comment applies. This field is closing down; use `line` instead.", + "type": "integer", + "examples": [ + 1 + ] + }, + "original_position": { + "description": "The index of the original line in the diff to which the comment applies. This field is closing down; use `original_line` instead.", + "type": "integer", + "examples": [ + 4 + ] + }, + "commit_id": { + "description": "The SHA of the commit to which the comment applies.", + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "original_commit_id": { + "description": "The SHA of the original commit to which the comment applies.", + "type": "string", + "examples": [ + "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840" + ] + }, + "in_reply_to_id": { + "description": "The comment ID to reply to.", + "type": "integer", + "examples": [ + 8 + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "description": "The text of the comment.", + "type": "string", + "examples": [ + "We should probably include a check for null values here." + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-14T16:00:49Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-14T16:00:49Z" + ] + }, + "html_url": { + "description": "HTML URL for the pull request review comment.", + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" + ] + }, + "pull_request_url": { + "description": "URL for the pull request that the review comment belongs to.", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + }, + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + ] + } + }, + "required": [ + "href" + ] + }, + "html": { + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" + ] + } + }, + "required": [ + "href" + ] + }, + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1" + ] + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "self", + "html", + "pull_request" + ] + }, + "start_line": { + "type": [ + "integer", + "null" + ], + "description": "The first line of the range for a multi-line comment.", + "examples": [ + 2 + ] + }, + "original_start_line": { + "type": [ + "integer", + "null" + ], + "description": "The first line of the range for a multi-line comment.", + "examples": [ + 2 + ] + }, + "start_side": { + "type": [ + "string", + "null" + ], + "description": "The side of the first line of the range for a multi-line comment.", + "enum": [ + "LEFT", + "RIGHT", + null + ], + "default": "RIGHT" + }, + "line": { + "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "type": "integer", + "examples": [ + 2 + ] + }, + "original_line": { + "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "type": "integer", + "examples": [ + 2 + ] + }, + "side": { + "description": "The side of the diff to which the comment applies. The side of the last line of the range for a multi-line comment", + "enum": [ + "LEFT", + "RIGHT" + ], + "default": "RIGHT", "type": "string" - } - }, - "runtime_constraints": { - "type": "object", - "properties": { - "allowed_port_privacy_settings": { - "description": "The privacy settings a user can select from when forwarding a port.", - "type": [ - "array", - "null" - ], - "items": { - "type": "string" + }, + "subject_type": { + "description": "The level at which the comment is targeted, can be a diff line or a file.", + "type": "string", + "enum": [ + "line", + "file" + ] + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" } - } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" + ] + }, + "body_html": { + "type": "string", + "examples": [ + "\"

comment body

\"" + ] + }, + "body_text": { + "type": "string", + "examples": [ + "\"comment body\"" + ] } }, - "pending_operation": { - "description": "Whether or not a codespace has a pending async operation. This would mean that the codespace is temporarily unavailable. The only thing that you can do with a codespace in this state is delete it.", - "type": [ - "boolean", - "null" - ] - }, - "pending_operation_disabled_reason": { - "description": "Text to show user when codespace is disabled by a pending operation", - "type": [ - "string", - "null" - ] - }, - "idle_timeout_notice": { - "description": "Text to show user when codespace idle timeout minutes has been overriden by an organization policy", - "type": [ - "string", - "null" - ] - }, - "retention_period_minutes": { - "description": "Duration in minutes after codespace has gone idle in which it will be deleted. Must be integer minutes between 0 and 43200 (30 days).", - "type": [ - "integer", - "null" - ], - "examples": [ - 60 - ] - }, - "retention_expires_at": { - "description": "When a codespace will be auto-deleted based on the \"retention_period_minutes\" and \"last_used_at\"", - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T20:01:12Z" - ] - }, - "last_known_stop_notice": { - "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", - "type": [ - "string", - "null" - ], - "examples": [ - "you've used 100% of your spending limit for Codespaces" - ] - } - }, - "required": [ - "id", - "name", - "environment_id", - "owner", - "billable_owner", - "repository", - "machine", - "prebuild", - "created_at", - "updated_at", - "last_used_at", - "state", - "url", - "git_status", - "location", - "idle_timeout_minutes", - "web_url", - "machines_url", - "start_url", - "stop_url", - "pulls_url", - "recent_folders" - ] + "required": [ + "url", + "id", + "node_id", + "pull_request_review_id", + "diff_hunk", + "path", + "commit_id", + "original_commit_id", + "user", + "body", + "created_at", + "updated_at", + "html_url", + "pull_request_url", + "author_association", + "_links" + ] + } }, "examples": { "default": { - "value": { - "id": 1, - "name": "monalisa-octocat-hello-world-g4wpq6h95q", - "environment_id": "26a7c758-7299-4a73-b978-5a92a7ae98a0", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "billable_owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "repository": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { + "value": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", + "pull_request_review_id": 42, + "id": 10, + "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw", + "diff_hunk": "@@ -16,33 +16,40 @@ public class Connection : IConnection...", + "path": "file1.txt", + "position": 1, + "original_position": 4, + "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "original_commit_id": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840", + "in_reply_to_id": 8, + "user": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -641891,499 +653055,281 @@ "type": "User", "site_admin": false }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "hooks_url": "http://api.github.com/repos/octocat/Hello-World/hooks" - }, - "machine": { - "name": "standardLinux", - "display_name": "4 cores, 16 GB RAM, 64 GB storage", - "operating_system": "linux", - "storage_in_bytes": 68719476736, - "memory_in_bytes": 17179869184, - "cpus": 4 - }, - "prebuild": false, - "devcontainer_path": ".devcontainer/devcontainer.json", - "created_at": "2021-10-14T00:53:30-06:00", - "updated_at": "2021-10-14T00:53:32-06:00", - "last_used_at": "2021-10-14T00:53:30-06:00", - "state": "Available", - "url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q", - "git_status": { - "ahead": 0, - "behind": 0, - "has_unpushed_changes": false, - "has_uncommitted_changes": false, - "ref": "main" - }, - "location": "WestUs2", - "idle_timeout_minutes": 60, - "retention_period_minutes": 43200, - "retention_expires_at": null, - "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", - "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", - "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", - "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [], - "template": null - } + "body": "Great stuff!", + "created_at": "2011-04-14T16:00:49Z", + "updated_at": "2011-04-14T16:00:49Z", + "html_url": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", + "author_association": "NONE", + "_links": { + "self": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + }, + "html": { + "href": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" + }, + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1" + } + }, + "start_line": 1, + "original_start_line": 1, + "start_side": "RIGHT", + "line": 2, + "original_line": 2, + "side": "RIGHT" + } + ] } } } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "comments" + } + }, + "post": { + "summary": "Create a review comment for a pull request", + "description": "Creates a review comment on the diff of a specified pull request. To add a regular comment to a pull request timeline, see \"[Create an issue comment](https://docs.github.com/rest/issues/comments#create-an-issue-comment).\"\n\nIf your comment applies to more than one line in the pull request diff, you should use the parameters `line`, `side`, and optionally `start_line` and `start_side` in your request.\n\nThe `position` parameter is closing down. If you use `position`, the `line`, `side`, `start_line`, and `start_side` parameters are not required.\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\"\nand \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/create-review-comment", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/comments#create-a-review-comment-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" } }, - "202": { - "description": "Response when the codespace creation partially failed but is being retried in the background", + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "body": { + "type": "string", + "description": "The text of the review comment." + }, + "commit_id": { + "type": "string", + "description": "The SHA of the commit needing a comment. Not using the latest commit SHA may render your comment outdated if a subsequent commit modifies the line you specify as the `position`." + }, + "path": { + "type": "string", + "description": "The relative path to the file that necessitates a comment." + }, + "position": { + "type": "integer", + "description": "**This parameter is closing down. Use `line` instead**. The position in the diff where you want to add a review comment. Note this value is not the same as the line number in the file. The position value equals the number of lines down from the first \"@@\" hunk header in the file you want to add a comment. The line just below the \"@@\" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file.", + "deprecated": true, + "x-github": { + "deprecationDate": "2022-11-01" + } + }, + "side": { + "type": "string", + "description": "In a split diff view, the side of the diff that the pull request's changes appear on. Can be `LEFT` or `RIGHT`. Use `LEFT` for deletions that appear in red. Use `RIGHT` for additions that appear in green or unchanged lines that appear in white and are shown for context. For a multi-line comment, side represents whether the last line of the comment range is a deletion or addition. For more information, see \"[Diff view options](https://docs.github.com/articles/about-comparing-branches-in-pull-requests#diff-view-options)\" in the GitHub Help documentation.", + "enum": [ + "LEFT", + "RIGHT" + ] + }, + "line": { + "type": "integer", + "description": "**Required unless using `subject_type:file`**. The line of the blob in the pull request diff that the comment applies to. For a multi-line comment, the last line of the range that your comment applies to." + }, + "start_line": { + "type": "integer", + "description": "**Required when using multi-line comments unless using `in_reply_to`**. The `start_line` is the first line in the pull request diff that your multi-line comment applies to. To learn more about multi-line comments, see \"[Commenting on a pull request](https://docs.github.com/articles/commenting-on-a-pull-request#adding-line-comments-to-a-pull-request)\" in the GitHub Help documentation." + }, + "start_side": { + "type": "string", + "description": "**Required when using multi-line comments unless using `in_reply_to`**. The `start_side` is the starting side of the diff that the comment applies to. Can be `LEFT` or `RIGHT`. To learn more about multi-line comments, see \"[Commenting on a pull request](https://docs.github.com/articles/commenting-on-a-pull-request#adding-line-comments-to-a-pull-request)\" in the GitHub Help documentation. See `side` in this table for additional context.", + "enum": [ + "LEFT", + "RIGHT", + "side" + ] + }, + "in_reply_to": { + "type": "integer", + "description": "The ID of the review comment to reply to. To find the ID of a review comment with [\"List review comments on a pull request\"](#list-review-comments-on-a-pull-request). When specified, all parameters other than `body` in the request body are ignored.", + "examples": [ + 2 + ] + }, + "subject_type": { + "type": "string", + "description": "The level at which the comment is targeted.", + "enum": [ + "line", + "file" + ] + } + }, + "required": [ + "body", + "commit_id", + "path" + ] + }, + "examples": { + "example-for-a-multi-line-comment": { + "summary": "Example for a multi-line comment", + "value": { + "body": "Great stuff!", + "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "path": "file1.txt", + "start_line": 1, + "start_side": "RIGHT", + "line": 2, + "side": "RIGHT" + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Response", "content": { "application/json": { "schema": { + "title": "Pull Request Review Comment", + "description": "Pull Request Review Comments are comments on a portion of the Pull Request's diff.", "type": "object", - "title": "Codespace", - "description": "A codespace.", "properties": { - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "name": { - "description": "Automatically generated name of this codespace.", + "url": { + "description": "URL for the pull request review comment", "type": "string", "examples": [ - "monalisa-octocat-hello-world-g4wpq6h95q" - ] - }, - "display_name": { - "description": "Display name for this codespace.", - "type": [ - "string", - "null" - ], - "examples": [ - "bookish space pancake" + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" ] }, - "environment_id": { - "description": "UUID identifying this codespace's environment.", + "pull_request_review_id": { + "description": "The ID of the pull request review to which the comment belongs.", "type": [ - "string", + "integer", "null" - ], - "examples": [ - "26a7c758-7299-4a73-b978-5a92a7ae98a0" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - }, - "billable_owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" + ], + "format": "int64", + "examples": [ + 42 ] }, - "repository": { - "title": "Minimal Repository", - "description": "Minimal Repository", - "type": "object", - "properties": { - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1296269 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "type": "string", - "examples": [ - "Hello-World" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] + "id": { + "description": "The ID of the pull request review comment.", + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "description": "The node ID of the pull request review comment.", + "type": "string", + "examples": [ + "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw" + ] + }, + "diff_hunk": { + "description": "The diff of the line that the comment refers to.", + "type": "string", + "examples": [ + "@@ -16,33 +16,40 @@ public class Connection : IConnection..." + ] + }, + "path": { + "description": "The relative path of the file to which the comment applies.", + "type": "string", + "examples": [ + "config/database.yaml" + ] + }, + "position": { + "description": "The line index in the diff to which the comment applies. This field is closing down; use `line` instead.", + "type": "integer", + "examples": [ + 1 + ] + }, + "original_position": { + "description": "The index of the original line in the diff to which the comment applies. This field is closing down; use `original_line` instead.", + "type": "integer", + "examples": [ + 4 + ] + }, + "commit_id": { + "description": "The SHA of the commit to which the comment applies.", + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "original_commit_id": { + "description": "The SHA of the original commit to which the comment applies.", + "type": "string", + "examples": [ + "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840" + ] + }, + "in_reply_to_id": { + "description": "The comment ID to reply to.", + "type": "integer", + "examples": [ + 8 + ] + }, + "user": { + "anyOf": [ + { + "type": "null" }, - "owner": { + { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -642550,1289 +653496,1112 @@ "type", "url" ] - }, - "private": { - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string" - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string" - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" + } + ] + }, + "body": { + "description": "The text of the comment.", + "type": "string", + "examples": [ + "We should probably include a check for null values here." + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-14T16:00:49Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-14T16:00:49Z" + ] + }, + "html_url": { + "description": "HTML URL for the pull request review comment.", + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" + ] + }, + "pull_request_url": { + "description": "URL for the pull request that the review comment belongs to.", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + }, + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + ] + } + }, + "required": [ + "href" ] }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + "html": { + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" + ] + } + }, + "required": [ + "href" ] }, - "clone_url": { - "type": "string" - }, - "mirror_url": { - "type": [ - "string", - "null" + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1" + ] + } + }, + "required": [ + "href" ] - }, - "hooks_url": { + } + }, + "required": [ + "self", + "html", + "pull_request" + ] + }, + "start_line": { + "type": [ + "integer", + "null" + ], + "description": "The first line of the range for a multi-line comment.", + "examples": [ + 2 + ] + }, + "original_start_line": { + "type": [ + "integer", + "null" + ], + "description": "The first line of the range for a multi-line comment.", + "examples": [ + 2 + ] + }, + "start_side": { + "type": [ + "string", + "null" + ], + "description": "The side of the first line of the range for a multi-line comment.", + "enum": [ + "LEFT", + "RIGHT", + null + ], + "default": "RIGHT" + }, + "line": { + "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "type": "integer", + "examples": [ + 2 + ] + }, + "original_line": { + "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "type": "integer", + "examples": [ + 2 + ] + }, + "side": { + "description": "The side of the diff to which the comment applies. The side of the last line of the range for a multi-line comment", + "enum": [ + "LEFT", + "RIGHT" + ], + "default": "RIGHT", + "type": "string" + }, + "subject_type": { + "description": "The level at which the comment is targeted, can be a diff line or a file.", + "type": "string", + "enum": [ + "line", + "file" + ] + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" - ] + "format": "uri" }, - "svn_url": { - "type": "string" + "total_count": { + "type": "integer" }, - "homepage": { - "type": [ - "string", - "null" - ] + "+1": { + "type": "integer" }, - "language": { - "type": [ - "string", - "null" - ] + "-1": { + "type": "integer" }, - "forks_count": { + "laugh": { "type": "integer" }, - "stargazers_count": { + "confused": { "type": "integer" }, - "watchers_count": { + "heart": { "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.", + "hooray": { "type": "integer" }, - "default_branch": { - "type": "string" + "eyes": { + "type": "integer" }, - "open_issues_count": { + "rocket": { "type": "integer" + } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" + ] + }, + "body_html": { + "type": "string", + "examples": [ + "\"

comment body

\"" + ] + }, + "body_text": { + "type": "string", + "examples": [ + "\"comment body\"" + ] + } + }, + "required": [ + "url", + "id", + "node_id", + "pull_request_review_id", + "diff_hunk", + "path", + "commit_id", + "original_commit_id", + "user", + "body", + "created_at", + "updated_at", + "html_url", + "pull_request_url", + "author_association", + "_links" + ] + }, + "examples": { + "example-for-a-multi-line-comment": { + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", + "pull_request_review_id": 42, + "id": 10, + "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw", + "diff_hunk": "@@ -16,33 +16,40 @@ public class Connection : IConnection...", + "path": "file1.txt", + "position": 1, + "original_position": 4, + "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "original_commit_id": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840", + "in_reply_to_id": 8, + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Great stuff!", + "created_at": "2011-04-14T16:00:49Z", + "updated_at": "2011-04-14T16:00:49Z", + "html_url": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", + "author_association": "NONE", + "_links": { + "self": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" }, - "is_template": { - "type": "boolean" + "html": { + "href": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" }, - "topics": { - "type": "array", - "items": { + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1" + } + }, + "start_line": 1, + "original_start_line": 1, + "start_side": "RIGHT", + "line": 2, + "original_line": 2, + "side": "RIGHT" + } + } + } + } + }, + "headers": { + "Location": { + "example": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", + "schema": { + "type": "string" + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] } + } + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "triggersNotification": true, + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "comments" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies": { + "post": { + "summary": "Create a reply for a review comment", + "description": "Creates a reply to a review comment for a pull request. For the `comment_id`, provide the ID of the review comment you are replying to. This must be the ID of a _top-level review comment_, not a reply to that comment. Replies to replies are not supported.\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\"\nand \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/create-reply-for-review-comment", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/comments#create-a-reply-for-a-review-comment" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "comment_id", + "description": "The unique identifier of the comment.", + "in": "path", + "required": true, + "schema": { + "type": "integer", + "format": "int64" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "body": { + "type": "string", + "description": "The text of the review comment." + } + }, + "required": [ + "body" + ] + }, + "examples": { + "default": { + "value": { + "body": "Great stuff!" + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Review Comment", + "description": "Pull Request Review Comments are comments on a portion of the Pull Request's diff.", + "type": "object", + "properties": { + "url": { + "description": "URL for the pull request review comment", + "type": "string", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + ] + }, + "pull_request_review_id": { + "description": "The ID of the pull request review to which the comment belongs.", + "type": [ + "integer", + "null" + ], + "format": "int64", + "examples": [ + 42 + ] + }, + "id": { + "description": "The ID of the pull request review comment.", + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "description": "The node ID of the pull request review comment.", + "type": "string", + "examples": [ + "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw" + ] + }, + "diff_hunk": { + "description": "The diff of the line that the comment refers to.", + "type": "string", + "examples": [ + "@@ -16,33 +16,40 @@ public class Connection : IConnection..." + ] + }, + "path": { + "description": "The relative path of the file to which the comment applies.", + "type": "string", + "examples": [ + "config/database.yaml" + ] + }, + "position": { + "description": "The line index in the diff to which the comment applies. This field is closing down; use `line` instead.", + "type": "integer", + "examples": [ + 1 + ] + }, + "original_position": { + "description": "The index of the original line in the diff to which the comment applies. This field is closing down; use `original_line` instead.", + "type": "integer", + "examples": [ + 4 + ] + }, + "commit_id": { + "description": "The SHA of the commit to which the comment applies.", + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "original_commit_id": { + "description": "The SHA of the original commit to which the comment applies.", + "type": "string", + "examples": [ + "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840" + ] + }, + "in_reply_to_id": { + "description": "The comment ID to reply to.", + "type": "integer", + "examples": [ + 8 + ] + }, + "user": { + "anyOf": [ + { + "type": "null" }, - "has_issues": { - "type": "boolean" - }, - "has_projects": { - "type": "boolean" - }, - "has_wiki": { - "type": "boolean" - }, - "has_pages": { - "type": "boolean" - }, - "has_downloads": { - "type": "boolean" - }, - "has_discussions": { - "type": "boolean" - }, - "has_pull_requests": { - "type": "boolean" - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", - "type": "string", - "enum": [ - "all", - "collaborators_only" - ] - }, - "archived": { - "type": "boolean" - }, - "disabled": { - "type": "boolean" - }, - "visibility": { - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "permissions": { + { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "admin": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - }, - "push": { - "type": "boolean" + "name": { + "type": [ + "string", + "null" + ] }, - "triage": { - "type": "boolean" + "email": { + "type": [ + "string", + "null" + ] }, - "pull": { - "type": "boolean" - } - } - }, - "role_name": { - "type": "string", - "examples": [ - "admin" - ] - }, - "temp_clone_token": { - "type": "string" - }, - "delete_branch_on_merge": { - "type": "boolean" - }, - "subscribers_count": { - "type": "integer" - }, - "network_count": { - "type": "integer" - }, - "code_of_conduct": { - "title": "Code Of Conduct", - "description": "Code Of Conduct", - "type": "object", - "properties": { - "key": { + "login": { "type": "string", "examples": [ - "contributor_covenant" + "octocat" ] }, - "name": { - "type": "string", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "Contributor Covenant" + 1 ] }, - "url": { + "node_id": { "type": "string", - "format": "uri", "examples": [ - "https://api.github.com/codes_of_conduct/contributor_covenant" + "MDQ6VXNlcjE=" ] }, - "body": { + "avatar_url": { "type": "string", + "format": "uri", "examples": [ - "# Contributor Covenant Code of Conduct\n\n## Our Pledge\n\nIn the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.\n\n## Our Standards\n\nExamples of behavior that contributes to creating a positive environment include:\n\n* Using welcoming and inclusive language\n* Being respectful of differing viewpoints and experiences\n* Gracefully accepting constructive criticism\n* Focusing on what is best for the community\n* Showing empathy towards other community members\n\nExamples of unacceptable behavior by participants include:\n\n* The use of sexualized language or imagery and unwelcome sexual attention or advances\n* Trolling, insulting/derogatory comments, and personal or political attacks\n* Public or private harassment\n* Publishing others' private information, such as a physical or electronic address, without explicit permission\n* Other conduct which could reasonably be considered inappropriate in a professional setting\n\n## Our Responsibilities\n\nProject maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response\n to any instances of unacceptable behavior.\n\nProject maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.\n\n## Scope\n\nThis Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address,\n posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.\n\n## Enforcement\n\nInstances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at [EMAIL]. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.\n\nProject maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.\n\n## Attribution\n\nThis Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.4, available at [http://contributor-covenant.org/version/1/4](http://contributor-covenant.org/version/1/4/).\n" + "https://github.com/images/error/octocat_happy.gif" ] }, - "html_url": { + "gravatar_id": { "type": [ "string", "null" ], - "format": "uri" - } - }, - "required": [ - "url", - "html_url", - "key", - "name" - ] - }, - "license": { - "type": [ - "object", - "null" - ], - "properties": { - "key": { - "type": "string" - }, - "name": { - "type": "string" - }, - "spdx_id": { - "type": "string" + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] }, "url": { - "type": [ - "string", - "null" + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" ] }, - "node_id": { - "type": "string" - } - } - }, - "forks": { - "type": "integer", - "examples": [ - 0 - ] - }, - "open_issues": { - "type": "integer", - "examples": [ - 0 - ] - }, - "watchers": { - "type": "integer", - "examples": [ - 0 - ] - }, - "allow_forking": { - "type": "boolean" - }, - "web_commit_signoff_required": { - "type": "boolean", - "examples": [ - false - ] - }, - "security_and_analysis": { - "type": [ - "object", - "null" - ], - "properties": { - "advanced_security": { - "description": "Enable or disable GitHub Advanced Security for the repository.\n\nFor standalone Code Scanning or Secret Protection products, this parameter cannot be used.\n", - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "code_security": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "dependabot_security_updates": { - "description": "Enable or disable Dependabot security updates for the repository.", - "type": "object", - "properties": { - "status": { - "description": "The enablement status of Dependabot security updates for the repository.", - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "secret_scanning": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] }, - "secret_scanning_push_protection": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] }, - "secret_scanning_non_provider_patterns": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] }, - "secret_scanning_ai_detection": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] }, - "secret_scanning_delegated_alert_dismissal": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] }, - "secret_scanning_delegated_bypass": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] }, - "secret_scanning_delegated_bypass_options": { - "type": "object", - "properties": { - "reviewers": { - "type": "array", - "description": "The bypass reviewers for secret scanning delegated bypass", - "items": { - "type": "object", - "required": [ - "reviewer_id", - "reviewer_type" - ], - "properties": { - "reviewer_id": { - "type": "integer", - "description": "The ID of the team or role selected as a bypass reviewer" - }, - "reviewer_type": { - "type": "string", - "description": "The type of the bypass reviewer", - "enum": [ - "TEAM", - "ROLE" - ] - }, - "mode": { - "type": "string", - "description": "The bypass mode for the reviewer", - "enum": [ - "ALWAYS", - "EXEMPT" - ], - "default": "ALWAYS" - } - } - } - } - } - } - } - }, - "custom_properties": { - "type": "object", - "description": "The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values.", - "additionalProperties": true - } - }, - "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" - ] - }, - "machine": { - "anyOf": [ - { - "type": "null" - }, - { - "type": "object", - "title": "Codespace machine", - "description": "A description of the machine powering a codespace.", - "properties": { - "name": { + "organizations_url": { "type": "string", - "description": "The name of the machine.", + "format": "uri", "examples": [ - "standardLinux" + "https://api.github.com/users/octocat/orgs" ] }, - "display_name": { + "repos_url": { "type": "string", - "description": "The display name of the machine includes cores, memory, and storage.", + "format": "uri", "examples": [ - "4 cores, 16 GB RAM, 64 GB storage" + "https://api.github.com/users/octocat/repos" ] }, - "operating_system": { + "events_url": { "type": "string", - "description": "The operating system of the machine.", "examples": [ - "linux" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "storage_in_bytes": { - "type": "integer", - "description": "How much storage is available to the codespace.", + "received_events_url": { + "type": "string", + "format": "uri", "examples": [ - 68719476736 + "https://api.github.com/users/octocat/received_events" ] }, - "memory_in_bytes": { - "type": "integer", - "description": "How much memory is available to the codespace.", + "type": { + "type": "string", "examples": [ - 17179869184 + "User" ] }, - "cpus": { - "type": "integer", - "description": "How many cores are available to the codespace.", + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", "examples": [ - 4 + "\"2020-07-09T00:17:55Z\"" ] }, - "prebuild_availability": { - "type": [ - "string", - "null" - ], - "description": "Whether a prebuild is currently available when creating a codespace for this machine and repository. If a branch was not specified as a ref, the default branch will be assumed. Value will be \"null\" if prebuilds are not supported or prebuild availability could not be determined. Value will be \"none\" if no prebuild is available. Latest values \"ready\" and \"in_progress\" indicate the prebuild availability status.", - "enum": [ - "none", - "ready", - "in_progress", - null - ], + "user_view_type": { + "type": "string", "examples": [ - "ready" + "public" ] } }, "required": [ - "name", - "display_name", - "operating_system", - "storage_in_bytes", - "memory_in_bytes", - "cpus", - "prebuild_availability" + "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" ] } ] }, - "devcontainer_path": { - "description": "Path to devcontainer.json from repo root used to create Codespace.", - "type": [ - "string", - "null" - ], - "examples": [ - ".devcontainer/example/devcontainer.json" - ] - }, - "prebuild": { - "description": "Whether the codespace was created from a prebuild.", - "type": [ - "boolean", - "null" - ], + "body": { + "description": "The text of the comment.", + "type": "string", "examples": [ - false + "We should probably include a check for null values here." ] }, "created_at": { "type": "string", "format": "date-time", "examples": [ - "2011-01-26T19:01:12Z" + "2011-04-14T16:00:49Z" ] }, "updated_at": { "type": "string", "format": "date-time", "examples": [ - "2011-01-26T19:01:12Z" + "2011-04-14T16:00:49Z" ] }, - "last_used_at": { - "description": "Last known time this codespace was started.", + "html_url": { + "description": "HTML URL for the pull request review comment.", "type": "string", - "format": "date-time", + "format": "uri", "examples": [ - "2011-01-26T19:01:12Z" + "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" ] }, - "state": { - "description": "State of this codespace.", - "enum": [ - "Unknown", - "Created", - "Queued", - "Provisioning", - "Available", - "Awaiting", - "Unavailable", - "Deleted", - "Moved", - "Shutdown", - "Archived", - "Starting", - "ShuttingDown", - "Failed", - "Exporting", - "Updating", - "Rebuilding" - ], + "pull_request_url": { + "description": "URL for the pull request that the review comment belongs to.", "type": "string", + "format": "uri", "examples": [ - "Available" + "https://api.github.com/repos/octocat/Hello-World/pulls/1" ] }, - "url": { - "description": "API URL for this codespace.", + "author_association": { + "title": "author_association", "type": "string", - "format": "uri" + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] }, - "git_status": { - "description": "Details about the codespace's git repository.", + "_links": { "type": "object", "properties": { - "ahead": { - "description": "The number of commits the local repository is ahead of the remote.", - "type": "integer", - "examples": [ - 0 + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + ] + } + }, + "required": [ + "href" ] }, - "behind": { - "description": "The number of commits the local repository is behind the remote.", - "type": "integer", - "examples": [ - 0 + "html": { + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" + ] + } + }, + "required": [ + "href" ] }, - "has_unpushed_changes": { - "description": "Whether the local repository has unpushed changes.", - "type": "boolean" - }, - "has_uncommitted_changes": { - "description": "Whether the local repository has uncommitted changes.", - "type": "boolean" - }, - "ref": { - "description": "The current branch (or SHA if in detached HEAD state) of the local repository.", - "type": "string", - "examples": [ - "main" + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1" + ] + } + }, + "required": [ + "href" ] } - } - }, - "location": { - "description": "The initally assigned location of a new codespace.", - "enum": [ - "EastUs", - "SouthEastAsia", - "WestEurope", - "WestUs2" - ], - "type": "string", - "examples": [ - "WestUs2" + }, + "required": [ + "self", + "html", + "pull_request" ] }, - "idle_timeout_minutes": { - "description": "The number of minutes of inactivity after which this codespace will be automatically stopped.", + "start_line": { "type": [ "integer", "null" ], + "description": "The first line of the range for a multi-line comment.", "examples": [ - 60 - ] - }, - "web_url": { - "description": "URL to access this codespace on the web.", - "type": "string", - "format": "uri" - }, - "machines_url": { - "description": "API URL to access available alternate machine types for this codespace.", - "type": "string", - "format": "uri" - }, - "start_url": { - "description": "API URL to start this codespace.", - "type": "string", - "format": "uri" - }, - "stop_url": { - "description": "API URL to stop this codespace.", - "type": "string", - "format": "uri" - }, - "publish_url": { - "description": "API URL to publish this codespace to a new repository.", - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "pulls_url": { - "description": "API URL for the Pull Request associated with this codespace, if any.", - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "recent_folders": { - "type": "array", - "items": { - "type": "string" - } - }, - "runtime_constraints": { - "type": "object", - "properties": { - "allowed_port_privacy_settings": { - "description": "The privacy settings a user can select from when forwarding a port.", - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - } - }, - "pending_operation": { - "description": "Whether or not a codespace has a pending async operation. This would mean that the codespace is temporarily unavailable. The only thing that you can do with a codespace in this state is delete it.", - "type": [ - "boolean", - "null" - ] - }, - "pending_operation_disabled_reason": { - "description": "Text to show user when codespace is disabled by a pending operation", - "type": [ - "string", - "null" - ] - }, - "idle_timeout_notice": { - "description": "Text to show user when codespace idle timeout minutes has been overriden by an organization policy", - "type": [ - "string", - "null" + 2 ] }, - "retention_period_minutes": { - "description": "Duration in minutes after codespace has gone idle in which it will be deleted. Must be integer minutes between 0 and 43200 (30 days).", + "original_start_line": { "type": [ "integer", "null" ], + "description": "The first line of the range for a multi-line comment.", "examples": [ - 60 + 2 ] }, - "retention_expires_at": { - "description": "When a codespace will be auto-deleted based on the \"retention_period_minutes\" and \"last_used_at\"", + "start_side": { "type": [ "string", "null" ], - "format": "date-time", + "description": "The side of the first line of the range for a multi-line comment.", + "enum": [ + "LEFT", + "RIGHT", + null + ], + "default": "RIGHT" + }, + "line": { + "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "type": "integer", "examples": [ - "2011-01-26T20:01:12Z" + 2 ] }, - "last_known_stop_notice": { - "description": "The text to display to a user when a codespace has been stopped for a potentially actionable reason.", - "type": [ - "string", - "null" - ], + "original_line": { + "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "type": "integer", "examples": [ - "you've used 100% of your spending limit for Codespaces" + 2 ] - } - }, - "required": [ - "id", - "name", - "environment_id", - "owner", - "billable_owner", - "repository", - "machine", - "prebuild", - "created_at", - "updated_at", - "last_used_at", - "state", - "url", - "git_status", - "location", - "idle_timeout_minutes", - "web_url", - "machines_url", - "start_url", - "stop_url", - "pulls_url", - "recent_folders" - ] - }, - "examples": { - "default": { - "value": { - "id": 1, - "name": "monalisa-octocat-hello-world-g4wpq6h95q", - "environment_id": "26a7c758-7299-4a73-b978-5a92a7ae98a0", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "billable_owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "repository": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "hooks_url": "http://api.github.com/repos/octocat/Hello-World/hooks" - }, - "machine": { - "name": "standardLinux", - "display_name": "4 cores, 16 GB RAM, 64 GB storage", - "operating_system": "linux", - "storage_in_bytes": 68719476736, - "memory_in_bytes": 17179869184, - "cpus": 4 - }, - "prebuild": false, - "devcontainer_path": ".devcontainer/devcontainer.json", - "created_at": "2021-10-14T00:53:30-06:00", - "updated_at": "2021-10-14T00:53:32-06:00", - "last_used_at": "2021-10-14T00:53:30-06:00", - "state": "Available", - "url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q", - "git_status": { - "ahead": 0, - "behind": 0, - "has_unpushed_changes": false, - "has_uncommitted_changes": false, - "ref": "main" - }, - "location": "WestUs2", - "idle_timeout_minutes": 60, - "retention_period_minutes": 43200, - "retention_expires_at": null, - "web_url": "https://monalisa-octocat-hello-world-g4wpq6h95q.github.dev", - "machines_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/machines", - "start_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/start", - "stop_url": "https://api.github.com/user/codespaces/monalisa-octocat-hello-world-g4wpq6h95q/stop", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "recent_folders": [], - "template": null - } - } - } - } - } - }, - "401": { - "description": "Requires authentication", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" }, - "documentation_url": { + "side": { + "description": "The side of the diff to which the comment applies. The side of the last line of the range for a multi-line comment", + "enum": [ + "LEFT", + "RIGHT" + ], + "default": "RIGHT", "type": "string" }, - "url": { - "type": "string" + "subject_type": { + "description": "The level at which the comment is targeted, can be a diff line or a file.", + "type": "string", + "enum": [ + "line", + "file" + ] + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" + } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" + ] + }, + "body_html": { + "type": "string", + "examples": [ + "\"

comment body

\"" + ] }, - "status": { - "type": "string" + "body_text": { + "type": "string", + "examples": [ + "\"comment body\"" + ] + } + }, + "required": [ + "url", + "id", + "node_id", + "pull_request_review_id", + "diff_hunk", + "path", + "commit_id", + "original_commit_id", + "user", + "body", + "created_at", + "updated_at", + "html_url", + "pull_request_url", + "author_association", + "_links" + ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", + "pull_request_review_id": 42, + "id": 10, + "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw", + "diff_hunk": "@@ -16,33 +16,40 @@ public class Connection : IConnection...", + "path": "file1.txt", + "position": 1, + "original_position": 4, + "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "original_commit_id": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840", + "in_reply_to_id": 426899381, + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Great stuff!", + "created_at": "2011-04-14T16:00:49Z", + "updated_at": "2011-04-14T16:00:49Z", + "html_url": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", + "author_association": "NONE", + "_links": { + "self": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + }, + "html": { + "href": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" + }, + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1" + } + }, + "start_line": 1, + "original_start_line": 1, + "start_side": "RIGHT", + "line": 2, + "original_line": 2, + "side": "RIGHT" } } } } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { + }, + "headers": { + "Location": { + "example": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } + "type": "string" } } } @@ -643862,48 +654631,28 @@ } } } - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } } }, "x-github": { + "triggersNotification": true, "githubCloudOnly": false, "enabledForGitHubApps": false, - "category": "codespaces", - "subcategory": "codespaces" + "category": "pulls", + "subcategory": "comments" } } }, - "/repos/{owner}/{repo}/pulls/{pull_number}/comments": { + "/repos/{owner}/{repo}/pulls/{pull_number}/commits": { "get": { - "summary": "List review comments on a pull request", - "description": "Lists all review comments for a specified pull request. By default, review comments\nare in ascending order by ID.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "summary": "List commits on a pull request", + "description": "Lists a maximum of 250 commits for a pull request. To receive a complete\ncommit list for pull requests with more than 250 commits, use the [List commits](https://docs.github.com/rest/commits/commits#list-commits)\nendpoint.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", "tags": [ "pulls" ], - "operationId": "pulls/list-review-comments", + "operationId": "pulls/list-commits", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/comments#list-review-comments-on-a-pull-request" + "url": "https://docs.github.com/rest/pulls/pulls#list-commits-on-a-pull-request" }, "parameters": [ { @@ -643933,43 +654682,6 @@ "type": "integer" } }, - { - "name": "sort", - "description": "The property to sort the results by.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "created", - "updated" - ], - "default": "created" - } - }, - { - "name": "direction", - "description": "The direction to sort results. Ignored without `sort` parameter.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "asc", - "desc" - ] - } - }, - { - "name": "since", - "description": "Only show results that were last updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "format": "date-time" - } - }, { "name": "per_page", "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", @@ -643997,97 +654709,202 @@ "schema": { "type": "array", "items": { - "title": "Pull Request Review Comment", - "description": "Pull Request Review Comments are comments on a portion of the Pull Request's diff.", + "title": "Commit", + "description": "Commit", "type": "object", "properties": { "url": { - "description": "URL for the pull request review comment", - "type": "string", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - ] - }, - "pull_request_review_id": { - "description": "The ID of the pull request review to which the comment belongs.", - "type": [ - "integer", - "null" - ], - "format": "int64", - "examples": [ - 42 - ] - }, - "id": { - "description": "The ID of the pull request review comment.", - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "description": "The node ID of the pull request review comment.", "type": "string", + "format": "uri", "examples": [ - "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw" + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" ] }, - "diff_hunk": { - "description": "The diff of the line that the comment refers to.", + "sha": { "type": "string", "examples": [ - "@@ -16,33 +16,40 @@ public class Connection : IConnection..." + "6dcb09b5b57875f334f61aebed695e2e4193db5e" ] }, - "path": { - "description": "The relative path of the file to which the comment applies.", + "node_id": { "type": "string", "examples": [ - "config/database.yaml" - ] - }, - "position": { - "description": "The line index in the diff to which the comment applies. This field is closing down; use `line` instead.", - "type": "integer", - "examples": [ - 1 - ] - }, - "original_position": { - "description": "The index of the original line in the diff to which the comment applies. This field is closing down; use `original_line` instead.", - "type": "integer", - "examples": [ - 4 + "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==" ] }, - "commit_id": { - "description": "The SHA of the commit to which the comment applies.", + "html_url": { "type": "string", + "format": "uri", "examples": [ - "6dcb09b5b57875f334f61aebed695e2e4193db5e" + "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e" ] }, - "original_commit_id": { - "description": "The SHA of the original commit to which the comment applies.", + "comments_url": { "type": "string", + "format": "uri", "examples": [ - "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840" + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments" ] }, - "in_reply_to_id": { - "description": "The comment ID to reply to.", - "type": "integer", - "examples": [ - 8 + "commit": { + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "author": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "format": "date-time", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "committer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Git User", + "description": "Metaproperties for Git author/committer information.", + "type": "object", + "properties": { + "name": { + "type": "string", + "examples": [ + "\"Chris Wanstrath\"" + ] + }, + "email": { + "type": "string", + "examples": [ + "\"chris@ozmm.org\"" + ] + }, + "date": { + "type": "string", + "format": "date-time", + "examples": [ + "\"2007-10-29T02:42:39.000-07:00\"" + ] + } + } + } + ] + }, + "message": { + "type": "string", + "examples": [ + "Fix all the bugs" + ] + }, + "comment_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "tree": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "827efc6d56897b048c772eb4087f854f46256132" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tree/827efc6d56897b048c772eb4087f854f46256132" + ] + } + }, + "required": [ + "sha", + "url" + ] + }, + "verification": { + "title": "Verification", + "type": "object", + "properties": { + "verified": { + "type": "boolean" + }, + "reason": { + "type": "string" + }, + "payload": { + "type": [ + "string", + "null" + ] + }, + "signature": { + "type": [ + "string", + "null" + ] + }, + "verified_at": { + "type": [ + "string", + "null" + ] + } + }, + "required": [ + "verified", + "reason", + "payload", + "signature", + "verified_at" + ] + } + }, + "required": [ + "author", + "committer", + "comment_count", + "message", + "tree", + "url" ] }, - "user": { - "anyOf": [ - { - "type": "null" - }, + "author": { + "oneOf": [ { "title": "Simple User", "description": "A GitHub user.", @@ -644255,262 +655072,633 @@ "type", "url" ] + }, + { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false } - ] - }, - "body": { - "description": "The text of the comment.", - "type": "string", - "examples": [ - "We should probably include a check for null values here." - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-14T16:00:49Z" - ] - }, - "updated_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-14T16:00:49Z" - ] - }, - "html_url": { - "description": "HTML URL for the pull request review comment.", - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - ] - }, - "pull_request_url": { - "description": "URL for the pull request that the review comment belongs to.", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1" - ] - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" ], - "examples": [ - "OWNER" + "type": [ + "null", + "object" ] }, - "_links": { - "type": "object", - "properties": { - "self": { + "committer": { + "oneOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "href": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + "https://github.com/images/error/octocat_happy.gif" ] - } - }, - "required": [ - "href" - ] - }, - "html": { - "type": "object", - "properties": { - "href": { + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" + "https://api.github.com/users/octocat" ] - } - }, - "required": [ - "href" - ] - }, - "pull_request": { - "type": "object", - "properties": { - "href": { + }, + "html_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1" + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } }, "required": [ - "href" + "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" ] + }, + { + "title": "Empty Object", + "description": "An object without any properties.", + "type": "object", + "properties": {}, + "additionalProperties": false } - }, - "required": [ - "self", - "html", - "pull_request" + ], + "type": [ + "null", + "object" ] }, - "start_line": { + "parents": { + "type": "array", + "items": { + "type": "object", + "properties": { + "sha": { + "type": "string", + "examples": [ + "7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd" + ] + } + }, + "required": [ + "sha", + "url" + ] + } + }, + "stats": { + "type": "object", + "properties": { + "additions": { + "type": "integer" + }, + "deletions": { + "type": "integer" + }, + "total": { + "type": "integer" + } + } + }, + "files": { + "type": "array", + "items": { + "title": "Diff Entry", + "description": "Diff Entry", + "type": "object", + "properties": { + "sha": { + "type": [ + "string", + "null" + ], + "examples": [ + "bbcd538c8e72b8c175046e27cc8f907076331401" + ] + }, + "filename": { + "type": "string", + "examples": [ + "file1.txt" + ] + }, + "status": { + "type": "string", + "enum": [ + "added", + "removed", + "modified", + "renamed", + "copied", + "changed", + "unchanged" + ], + "examples": [ + "added" + ] + }, + "additions": { + "type": "integer", + "examples": [ + 103 + ] + }, + "deletions": { + "type": "integer", + "examples": [ + 21 + ] + }, + "changes": { + "type": "integer", + "examples": [ + 124 + ] + }, + "blob_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "raw_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + ] + }, + "contents_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "patch": { + "type": "string", + "examples": [ + "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" + ] + }, + "previous_filename": { + "type": "string", + "examples": [ + "file.txt" + ] + } + }, + "required": [ + "additions", + "blob_url", + "changes", + "contents_url", + "deletions", + "filename", + "raw_url", + "sha", + "status" + ] + } + } + }, + "required": [ + "url", + "sha", + "node_id", + "html_url", + "comments_url", + "commit", + "author", + "committer", + "parents" + ] + } + }, + "examples": { + "default": { + "value": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "node_id": "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==", + "html_url": "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments", + "commit": { + "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e", + "author": { + "name": "Monalisa Octocat", + "email": "support@github.com", + "date": "2011-04-14T16:00:49Z" + }, + "committer": { + "name": "Monalisa Octocat", + "email": "support@github.com", + "date": "2011-04-14T16:00:49Z" + }, + "message": "Fix all the bugs", + "tree": { + "url": "https://api.github.com/repos/octocat/Hello-World/tree/6dcb09b5b57875f334f61aebed695e2e4193db5e", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e" + }, + "comment_count": 0, + "verification": { + "verified": false, + "reason": "unsigned", + "signature": null, + "payload": null, + "verified_at": null + } + }, + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "committer": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "parents": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e" + } + ] + } + ] + } + } + } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "pulls" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/files": { + "get": { + "summary": "List pull requests files", + "description": "Lists the files in a specified pull request.\n\n> [!NOTE]\n> Responses include a maximum of 3000 files. The paginated response returns 30 files per page by default.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/list-files", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/pulls#list-pull-requests-files" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Diff Entry", + "description": "Diff Entry", + "type": "object", + "properties": { + "sha": { "type": [ - "integer", + "string", "null" ], - "description": "The first line of the range for a multi-line comment.", "examples": [ - 2 + "bbcd538c8e72b8c175046e27cc8f907076331401" ] }, - "original_start_line": { - "type": [ - "integer", - "null" - ], - "description": "The first line of the range for a multi-line comment.", + "filename": { + "type": "string", "examples": [ - 2 + "file1.txt" ] }, - "start_side": { - "type": [ - "string", - "null" - ], - "description": "The side of the first line of the range for a multi-line comment.", + "status": { + "type": "string", "enum": [ - "LEFT", - "RIGHT", - null + "added", + "removed", + "modified", + "renamed", + "copied", + "changed", + "unchanged" ], - "default": "RIGHT" + "examples": [ + "added" + ] }, - "line": { - "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "additions": { "type": "integer", "examples": [ - 2 + 103 ] }, - "original_line": { - "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "deletions": { "type": "integer", "examples": [ - 2 + 21 ] }, - "side": { - "description": "The side of the diff to which the comment applies. The side of the last line of the range for a multi-line comment", - "enum": [ - "LEFT", - "RIGHT" - ], - "default": "RIGHT", - "type": "string" + "changes": { + "type": "integer", + "examples": [ + 124 + ] }, - "subject_type": { - "description": "The level at which the comment is targeted, can be a diff line or a file.", + "blob_url": { "type": "string", - "enum": [ - "line", - "file" + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" ] }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" + "raw_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" ] }, - "body_html": { + "contents_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "patch": { "type": "string", "examples": [ - "\"

comment body

\"" + "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" ] }, - "body_text": { + "previous_filename": { "type": "string", "examples": [ - "\"comment body\"" + "file.txt" ] } }, "required": [ - "url", - "id", - "node_id", - "pull_request_review_id", - "diff_hunk", - "path", - "commit_id", - "original_commit_id", - "user", - "body", - "created_at", - "updated_at", - "html_url", - "pull_request_url", - "author_association", - "_links" + "additions", + "blob_url", + "changes", + "contents_url", + "deletions", + "filename", + "raw_url", + "sha", + "status" ] } }, @@ -644518,60 +655706,16 @@ "default": { "value": [ { - "url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", - "pull_request_review_id": 42, - "id": 10, - "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw", - "diff_hunk": "@@ -16,33 +16,40 @@ public class Connection : IConnection...", - "path": "file1.txt", - "position": 1, - "original_position": 4, - "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "original_commit_id": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840", - "in_reply_to_id": 8, - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "Great stuff!", - "created_at": "2011-04-14T16:00:49Z", - "updated_at": "2011-04-14T16:00:49Z", - "html_url": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "author_association": "NONE", - "_links": { - "self": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - }, - "html": { - "href": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1" - } - }, - "start_line": 1, - "original_start_line": 1, - "start_side": "RIGHT", - "line": 2, - "original_line": 2, - "side": "RIGHT" + "sha": "bbcd538c8e72b8c175046e27cc8f907076331401", + "filename": "file1.txt", + "status": "added", + "additions": 103, + "deletions": 21, + "changes": 124, + "blob_url": "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt", + "raw_url": "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e", + "patch": "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" } ] } @@ -644586,25 +655730,204 @@ } } } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, "category": "pulls", - "subcategory": "comments" + "subcategory": "pulls" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/merge": { + "get": { + "summary": "Check if a pull request has been merged", + "description": "Checks if a pull request has been merged into the base branch. The HTTP status of the response indicates whether or not the pull request has been merged; the response body is empty.", + "tags": [ + "pulls" + ], + "operationId": "pulls/check-if-merged", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/pulls#check-if-a-pull-request-has-been-merged" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "Response if pull request has been merged" + }, + "404": { + "description": "Not Found if pull request has not been merged" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "pulls" } }, - "post": { - "summary": "Create a review comment for a pull request", - "description": "Creates a review comment on the diff of a specified pull request. To add a regular comment to a pull request timeline, see \"[Create an issue comment](https://docs.github.com/rest/issues/comments#create-an-issue-comment).\"\n\nIf your comment applies to more than one line in the pull request diff, you should use the parameters `line`, `side`, and optionally `start_line` and `start_side` in your request.\n\nThe `position` parameter is closing down. If you use `position`, the `line`, `side`, `start_line`, and `start_side` parameters are not required.\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\"\nand \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "put": { + "summary": "Merge a pull request", + "description": "Merges a pull request into the base branch.\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"", "tags": [ "pulls" ], - "operationId": "pulls/create-review-comment", + "operationId": "pulls/merge", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/comments#create-a-review-comment-for-a-pull-request" + "url": "https://docs.github.com/rest/pulls/pulls#merge-a-pull-request" }, "parameters": [ { @@ -644636,90 +655959,43 @@ } ], "requestBody": { - "required": true, + "required": false, "content": { "application/json": { "schema": { - "type": "object", + "type": [ + "object", + "null" + ], "properties": { - "body": { - "type": "string", - "description": "The text of the review comment." - }, - "commit_id": { - "type": "string", - "description": "The SHA of the commit needing a comment. Not using the latest commit SHA may render your comment outdated if a subsequent commit modifies the line you specify as the `position`." - }, - "path": { + "commit_title": { "type": "string", - "description": "The relative path to the file that necessitates a comment." - }, - "position": { - "type": "integer", - "description": "**This parameter is closing down. Use `line` instead**. The position in the diff where you want to add a review comment. Note this value is not the same as the line number in the file. The position value equals the number of lines down from the first \"@@\" hunk header in the file you want to add a comment. The line just below the \"@@\" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file.", - "deprecated": true, - "x-github": { - "deprecationDate": "2022-11-01" - } + "description": "Title for the automatic commit message." }, - "side": { + "commit_message": { "type": "string", - "description": "In a split diff view, the side of the diff that the pull request's changes appear on. Can be `LEFT` or `RIGHT`. Use `LEFT` for deletions that appear in red. Use `RIGHT` for additions that appear in green or unchanged lines that appear in white and are shown for context. For a multi-line comment, side represents whether the last line of the comment range is a deletion or addition. For more information, see \"[Diff view options](https://docs.github.com/articles/about-comparing-branches-in-pull-requests#diff-view-options)\" in the GitHub Help documentation.", - "enum": [ - "LEFT", - "RIGHT" - ] - }, - "line": { - "type": "integer", - "description": "**Required unless using `subject_type:file`**. The line of the blob in the pull request diff that the comment applies to. For a multi-line comment, the last line of the range that your comment applies to." - }, - "start_line": { - "type": "integer", - "description": "**Required when using multi-line comments unless using `in_reply_to`**. The `start_line` is the first line in the pull request diff that your multi-line comment applies to. To learn more about multi-line comments, see \"[Commenting on a pull request](https://docs.github.com/articles/commenting-on-a-pull-request#adding-line-comments-to-a-pull-request)\" in the GitHub Help documentation." + "description": "Extra detail to append to automatic commit message." }, - "start_side": { + "sha": { "type": "string", - "description": "**Required when using multi-line comments unless using `in_reply_to`**. The `start_side` is the starting side of the diff that the comment applies to. Can be `LEFT` or `RIGHT`. To learn more about multi-line comments, see \"[Commenting on a pull request](https://docs.github.com/articles/commenting-on-a-pull-request#adding-line-comments-to-a-pull-request)\" in the GitHub Help documentation. See `side` in this table for additional context.", - "enum": [ - "LEFT", - "RIGHT", - "side" - ] - }, - "in_reply_to": { - "type": "integer", - "description": "The ID of the review comment to reply to. To find the ID of a review comment with [\"List review comments on a pull request\"](#list-review-comments-on-a-pull-request). When specified, all parameters other than `body` in the request body are ignored.", - "examples": [ - 2 - ] + "description": "SHA that pull request head must match to allow merge." }, - "subject_type": { + "merge_method": { "type": "string", - "description": "The level at which the comment is targeted.", + "description": "The merge method to use.", "enum": [ - "line", - "file" + "merge", + "squash", + "rebase" ] } - }, - "required": [ - "body", - "commit_id", - "path" - ] + } }, "examples": { - "example-for-a-multi-line-comment": { - "summary": "Example for a multi-line comment", + "response-if-merge-was-successful": { "value": { - "body": "Great stuff!", - "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "path": "file1.txt", - "start_line": 1, - "start_side": "RIGHT", - "line": 2, - "side": "RIGHT" + "commit_title": "Expand enum", + "commit_message": "Add a new value to the merge_method enum" } } } @@ -644727,594 +656003,89 @@ } }, "responses": { - "201": { - "description": "Response", + "200": { + "description": "if merge was successful", "content": { "application/json": { "schema": { - "title": "Pull Request Review Comment", - "description": "Pull Request Review Comments are comments on a portion of the Pull Request's diff.", + "title": "Pull Request Merge Result", + "description": "Pull Request Merge Result", "type": "object", "properties": { - "url": { - "description": "URL for the pull request review comment", - "type": "string", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - ] - }, - "pull_request_review_id": { - "description": "The ID of the pull request review to which the comment belongs.", - "type": [ - "integer", - "null" - ], - "format": "int64", - "examples": [ - 42 - ] - }, - "id": { - "description": "The ID of the pull request review comment.", - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "description": "The node ID of the pull request review comment.", - "type": "string", - "examples": [ - "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw" - ] - }, - "diff_hunk": { - "description": "The diff of the line that the comment refers to.", - "type": "string", - "examples": [ - "@@ -16,33 +16,40 @@ public class Connection : IConnection..." - ] - }, - "path": { - "description": "The relative path of the file to which the comment applies.", - "type": "string", - "examples": [ - "config/database.yaml" - ] - }, - "position": { - "description": "The line index in the diff to which the comment applies. This field is closing down; use `line` instead.", - "type": "integer", - "examples": [ - 1 - ] - }, - "original_position": { - "description": "The index of the original line in the diff to which the comment applies. This field is closing down; use `original_line` instead.", - "type": "integer", - "examples": [ - 4 - ] - }, - "commit_id": { - "description": "The SHA of the commit to which the comment applies.", - "type": "string", - "examples": [ - "6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "original_commit_id": { - "description": "The SHA of the original commit to which the comment applies.", - "type": "string", - "examples": [ - "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840" - ] - }, - "in_reply_to_id": { - "description": "The comment ID to reply to.", - "type": "integer", - "examples": [ - 8 - ] - }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "body": { - "description": "The text of the comment.", - "type": "string", - "examples": [ - "We should probably include a check for null values here." - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-14T16:00:49Z" - ] - }, - "updated_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-14T16:00:49Z" - ] - }, - "html_url": { - "description": "HTML URL for the pull request review comment.", - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - ] - }, - "pull_request_url": { - "description": "URL for the pull request that the review comment belongs to.", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1" - ] - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" - ] - }, - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - ] - } - }, - "required": [ - "href" - ] - }, - "html": { - "type": "object", - "properties": { - "href": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - ] - } - }, - "required": [ - "href" - ] - }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1" - ] - } - }, - "required": [ - "href" - ] - } - }, - "required": [ - "self", - "html", - "pull_request" - ] - }, - "start_line": { - "type": [ - "integer", - "null" - ], - "description": "The first line of the range for a multi-line comment.", - "examples": [ - 2 - ] - }, - "original_start_line": { - "type": [ - "integer", - "null" - ], - "description": "The first line of the range for a multi-line comment.", - "examples": [ - 2 - ] - }, - "start_side": { - "type": [ - "string", - "null" - ], - "description": "The side of the first line of the range for a multi-line comment.", - "enum": [ - "LEFT", - "RIGHT", - null - ], - "default": "RIGHT" - }, - "line": { - "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", - "type": "integer", - "examples": [ - 2 - ] - }, - "original_line": { - "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", - "type": "integer", - "examples": [ - 2 - ] - }, - "side": { - "description": "The side of the diff to which the comment applies. The side of the last line of the range for a multi-line comment", - "enum": [ - "LEFT", - "RIGHT" - ], - "default": "RIGHT", + "sha": { "type": "string" }, - "subject_type": { - "description": "The level at which the comment is targeted, can be a diff line or a file.", - "type": "string", - "enum": [ - "line", - "file" - ] - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - }, - "body_html": { - "type": "string", - "examples": [ - "\"

comment body

\"" - ] + "merged": { + "type": "boolean" }, - "body_text": { - "type": "string", - "examples": [ - "\"comment body\"" - ] + "message": { + "type": "string" } }, "required": [ - "url", - "id", - "node_id", - "pull_request_review_id", - "diff_hunk", - "path", - "commit_id", - "original_commit_id", - "user", - "body", - "created_at", - "updated_at", - "html_url", - "pull_request_url", - "author_association", - "_links" + "merged", + "message", + "sha" ] }, "examples": { - "example-for-a-multi-line-comment": { + "response-if-merge-was-successful": { "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", - "pull_request_review_id": 42, - "id": 10, - "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw", - "diff_hunk": "@@ -16,33 +16,40 @@ public class Connection : IConnection...", - "path": "file1.txt", - "position": 1, - "original_position": 4, - "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "original_commit_id": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840", - "in_reply_to_id": 8, - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "Great stuff!", - "created_at": "2011-04-14T16:00:49Z", - "updated_at": "2011-04-14T16:00:49Z", - "html_url": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "author_association": "NONE", - "_links": { - "self": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - }, - "html": { - "href": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1" - } - }, - "start_line": 1, - "original_start_line": 1, - "start_side": "RIGHT", - "line": 2, - "original_line": 2, - "side": "RIGHT" + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "merged": true, + "message": "Pull Request successfully merged" } } } } - }, - "headers": { - "Location": { - "example": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", + } + }, + "405": { + "description": "Method Not Allowed if merge cannot be performed", + "content": { + "application/json": { "schema": { - "type": "string" + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + }, + "examples": { + "response-if-merge-cannot-be-performed": { + "value": { + "message": "Pull Request is not mergeable" + } + } + } + } + } + }, + "409": { + "description": "Conflict if sha was provided and pull request head did not match", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + }, + "examples": { + "response-if-sha-was-provided-and-pull-request-head-did-not-match": { + "value": { + "message": "Head branch was modified. Review and try the merge again." + } + } } } } @@ -645419,6 +656190,32 @@ } } } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -645426,21 +656223,21 @@ "githubCloudOnly": false, "enabledForGitHubApps": true, "category": "pulls", - "subcategory": "comments" + "subcategory": "pulls" } } }, - "/repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies": { - "post": { - "summary": "Create a reply for a review comment", - "description": "Creates a reply to a review comment for a pull request. For the `comment_id`, provide the ID of the review comment you are replying to. This must be the ID of a _top-level review comment_, not a reply to that comment. Replies to replies are not supported.\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\"\nand \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "/repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers": { + "get": { + "summary": "Get all requested reviewers for a pull request", + "description": "Gets the users or teams whose review is requested for a pull request. Once a requested reviewer submits a review, they are no longer considered a requested reviewer. Their review will instead be returned by the [List reviews for a pull request](https://docs.github.com/rest/pulls/reviews#list-reviews-for-a-pull-request) operation.", "tags": [ "pulls" ], - "operationId": "pulls/create-reply-for-review-comment", + "operationId": "pulls/list-requested-reviewers", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/comments#create-a-reply-for-a-review-comment" + "url": "https://docs.github.com/rest/pulls/review-requests#get-all-requested-reviewers-for-a-pull-request" }, "parameters": [ { @@ -645469,684 +656266,540 @@ "schema": { "type": "integer" } - }, - { - "name": "comment_id", - "description": "The unique identifier of the comment.", - "in": "path", - "required": true, - "schema": { - "type": "integer", - "format": "int64" - } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "body": { - "type": "string", - "description": "The text of the review comment." - } - }, - "required": [ - "body" - ] - }, - "examples": { - "default": { - "value": { - "body": "Great stuff!" - } - } - } - } - } - }, "responses": { - "201": { + "200": { "description": "Response", "content": { "application/json": { "schema": { - "title": "Pull Request Review Comment", - "description": "Pull Request Review Comments are comments on a portion of the Pull Request's diff.", + "title": "Pull Request Review Request", + "description": "Pull Request Review Request", "type": "object", "properties": { - "url": { - "description": "URL for the pull request review comment", - "type": "string", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - ] - }, - "pull_request_review_id": { - "description": "The ID of the pull request review to which the comment belongs.", - "type": [ - "integer", - "null" - ], - "format": "int64", - "examples": [ - 42 - ] - }, - "id": { - "description": "The ID of the pull request review comment.", - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "description": "The node ID of the pull request review comment.", - "type": "string", - "examples": [ - "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw" - ] - }, - "diff_hunk": { - "description": "The diff of the line that the comment refers to.", - "type": "string", - "examples": [ - "@@ -16,33 +16,40 @@ public class Connection : IConnection..." - ] - }, - "path": { - "description": "The relative path of the file to which the comment applies.", - "type": "string", - "examples": [ - "config/database.yaml" - ] - }, - "position": { - "description": "The line index in the diff to which the comment applies. This field is closing down; use `line` instead.", - "type": "integer", - "examples": [ - 1 - ] - }, - "original_position": { - "description": "The index of the original line in the diff to which the comment applies. This field is closing down; use `original_line` instead.", - "type": "integer", - "examples": [ - 4 - ] - }, - "commit_id": { - "description": "The SHA of the commit to which the comment applies.", - "type": "string", - "examples": [ - "6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "original_commit_id": { - "description": "The SHA of the original commit to which the comment applies.", - "type": "string", - "examples": [ - "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840" - ] - }, - "in_reply_to_id": { - "description": "The comment ID to reply to.", - "type": "integer", - "examples": [ - 8 - ] - }, - "user": { - "anyOf": [ - { - "type": "null" + "users": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "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" + ] + } + }, + "teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] }, - "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" - ] - } - ] - }, - "body": { - "description": "The text of the comment.", - "type": "string", - "examples": [ - "We should probably include a check for null values here." - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-14T16:00:49Z" - ] - }, - "updated_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-14T16:00:49Z" - ] - }, - "html_url": { - "description": "HTML URL for the pull request review comment.", - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - ] - }, - "pull_request_url": { - "description": "URL for the pull request that the review comment belongs to.", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1" - ] - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" - ] - }, - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - ] - } + "url": { + "type": "string", + "format": "uri" }, - "required": [ - "href" - ] - }, - "html": { - "type": "object", - "properties": { - "href": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - ] - } + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] }, - "required": [ - "href" - ] - }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1" - ] - } + "members_url": { + "type": "string" }, - "required": [ - "href" - ] - } - }, - "required": [ - "self", - "html", - "pull_request" - ] - }, - "start_line": { - "type": [ - "integer", - "null" - ], - "description": "The first line of the range for a multi-line comment.", - "examples": [ - 2 - ] - }, - "original_start_line": { - "type": [ - "integer", - "null" - ], - "description": "The first line of the range for a multi-line comment.", - "examples": [ - 2 - ] - }, - "start_side": { - "type": [ - "string", - "null" - ], - "description": "The side of the first line of the range for a multi-line comment.", - "enum": [ - "LEFT", - "RIGHT", - null - ], - "default": "RIGHT" - }, - "line": { - "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", - "type": "integer", - "examples": [ - 2 - ] - }, - "original_line": { - "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", - "type": "integer", - "examples": [ - 2 - ] - }, - "side": { - "description": "The side of the diff to which the comment applies. The side of the last line of the range for a multi-line comment", - "enum": [ - "LEFT", - "RIGHT" - ], - "default": "RIGHT", - "type": "string" - }, - "subject_type": { - "description": "The level at which the comment is targeted, can be a diff line or a file.", - "type": "string", - "enum": [ - "line", - "file" - ] - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" + ], + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } + ] + } }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - }, - "body_html": { - "type": "string", - "examples": [ - "\"

comment body

\"" - ] - }, - "body_text": { - "type": "string", - "examples": [ - "\"comment body\"" - ] + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } } }, "required": [ - "url", - "id", - "node_id", - "pull_request_review_id", - "diff_hunk", - "path", - "commit_id", - "original_commit_id", - "user", - "body", - "created_at", - "updated_at", - "html_url", - "pull_request_url", - "author_association", - "_links" + "users", + "teams" ] }, "examples": { "default": { "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", - "pull_request_review_id": 42, - "id": 10, - "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw", - "diff_hunk": "@@ -16,33 +16,40 @@ public class Connection : IConnection...", - "path": "file1.txt", - "position": 1, - "original_position": 4, - "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "original_commit_id": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840", - "in_reply_to_id": 426899381, - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "Great stuff!", - "created_at": "2011-04-14T16:00:49Z", - "updated_at": "2011-04-14T16:00:49Z", - "html_url": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "author_association": "NONE", - "_links": { - "self": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - }, - "html": { - "href": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1" + "users": [ + { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false } - }, - "start_line": 1, - "original_start_line": 1, - "start_side": "RIGHT", - "line": 2, - "original_line": 2, - "side": "RIGHT" + ], + "teams": [ + { + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "name": "Justice League", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "permission": "admin", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "parent": null + } + ] } } } } }, "headers": { - "Location": { - "example": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", "schema": { "type": "string" } } } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } } }, "x-github": { - "triggersNotification": true, "githubCloudOnly": false, - "enabledForGitHubApps": false, + "enabledForGitHubApps": true, "category": "pulls", - "subcategory": "comments" + "subcategory": "review-requests" } - } - }, - "/repos/{owner}/{repo}/pulls/{pull_number}/commits": { - "get": { - "summary": "List commits on a pull request", - "description": "Lists a maximum of 250 commits for a pull request. To receive a complete\ncommit list for pull requests with more than 250 commits, use the [List commits](https://docs.github.com/rest/commits/commits#list-commits)\nendpoint.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + }, + "post": { + "summary": "Request reviewers for a pull request", + "description": "Requests reviews for a pull request from a given set of users and/or teams.\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"", "tags": [ "pulls" ], - "operationId": "pulls/list-commits", + "operationId": "pulls/request-reviewers", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/pulls#list-commits-on-a-pull-request" + "url": "https://docs.github.com/rest/pulls/review-requests#request-reviewers-for-a-pull-request" }, "parameters": [ { @@ -646175,1604 +656828,1119 @@ "schema": { "type": "integer" } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } } ], + "requestBody": { + "required": false, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "reviewers": { + "type": "array", + "description": "An array of user `login`s that will be requested.", + "items": { + "type": "string" + } + }, + "team_reviewers": { + "type": "array", + "description": "An array of team `slug`s that will be requested.", + "items": { + "type": "string" + } + } + }, + "anyOf": [ + { + "required": [ + "reviewers" + ] + }, + { + "required": [ + "team_reviewers" + ] + } + ] + }, + "examples": { + "default": { + "value": { + "reviewers": [ + "octocat", + "hubot", + "other_user" + ], + "team_reviewers": [ + "justice-league" + ] + } + } + } + } + } + }, "responses": { - "200": { + "201": { "description": "Response", "content": { "application/json": { "schema": { - "type": "array", - "items": { - "title": "Commit", - "description": "Commit", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "sha": { - "type": "string", - "examples": [ - "6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "comments_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments" - ] - }, - "commit": { - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "author": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Git User", - "description": "Metaproperties for Git author/committer information.", - "type": "object", - "properties": { - "name": { - "type": "string", - "examples": [ - "\"Chris Wanstrath\"" - ] - }, - "email": { - "type": "string", - "examples": [ - "\"chris@ozmm.org\"" - ] - }, - "date": { - "type": "string", - "format": "date-time", - "examples": [ - "\"2007-10-29T02:42:39.000-07:00\"" - ] - } - } - } - ] - }, - "committer": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Git User", - "description": "Metaproperties for Git author/committer information.", - "type": "object", - "properties": { - "name": { - "type": "string", - "examples": [ - "\"Chris Wanstrath\"" - ] - }, - "email": { - "type": "string", - "examples": [ - "\"chris@ozmm.org\"" - ] - }, - "date": { - "type": "string", - "format": "date-time", - "examples": [ - "\"2007-10-29T02:42:39.000-07:00\"" - ] - } - } - } - ] - }, - "message": { - "type": "string", - "examples": [ - "Fix all the bugs" - ] - }, - "comment_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "tree": { - "type": "object", - "properties": { - "sha": { - "type": "string", - "examples": [ - "827efc6d56897b048c772eb4087f854f46256132" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/tree/827efc6d56897b048c772eb4087f854f46256132" - ] - } - }, - "required": [ - "sha", - "url" - ] - }, - "verification": { - "title": "Verification", - "type": "object", - "properties": { - "verified": { - "type": "boolean" - }, - "reason": { - "type": "string" - }, - "payload": { - "type": [ - "string", - "null" - ] - }, - "signature": { - "type": [ - "string", - "null" - ] - }, - "verified_at": { - "type": [ - "string", - "null" - ] - } - }, - "required": [ - "verified", - "reason", - "payload", - "signature", - "verified_at" - ] - } + "title": "Pull Request Simple", + "description": "Pull Request Simple", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOlB1bGxSZXF1ZXN0MQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347" + ] + }, + "diff_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347.diff" + ] + }, + "patch_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347.patch" + ] + }, + "issue_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] + }, + "commits_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + ] + }, + "review_comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" + ] + }, + "review_comment_url": { + "type": "string", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" + ] + }, + "statuses_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "number": { + "type": "integer", + "examples": [ + 1347 + ] + }, + "state": { + "type": "string", + "examples": [ + "open" + ] + }, + "locked": { + "type": "boolean", + "examples": [ + true + ] + }, + "title": { + "type": "string", + "examples": [ + "new-feature" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" }, - "required": [ - "author", - "committer", - "comment_count", - "message", - "tree", - "url" - ] - }, - "author": { - "oneOf": [ - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - }, - { - "title": "Empty Object", - "description": "An object without any properties.", - "type": "object", - "properties": {}, - "additionalProperties": false - } - ], - "type": [ - "null", - "object" - ] - }, - "committer": { - "oneOf": [ - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - }, - { - "title": "Empty Object", - "description": "An object without any properties.", - "type": "object", - "properties": {}, - "additionalProperties": false - } - ], - "type": [ - "null", - "object" - ] - }, - "parents": { - "type": "array", - "items": { + { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "sha": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { "type": "string", "examples": [ - "7638417db6d59f3c431d3e1f261cc637155684cd" + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" ] }, "url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/commits/7638417db6d59f3c431d3e1f261cc637155684cd" + "https://api.github.com/users/octocat" ] }, "html_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World/commit/7638417db6d59f3c431d3e1f261cc637155684cd" + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } }, "required": [ - "sha", + "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" ] } - }, - "stats": { + ] + }, + "body": { + "type": [ + "string", + "null" + ], + "examples": [ + "Please pull these awesome changes" + ] + }, + "labels": { + "type": "array", + "items": { "type": "object", "properties": { - "additions": { - "type": "integer" + "id": { + "type": "integer", + "format": "int64" }, - "deletions": { - "type": "integer" + "node_id": { + "type": "string" }, - "total": { - "type": "integer" + "url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "color": { + "type": "string" + }, + "default": { + "type": "boolean" } - } - }, - "files": { - "type": "array", - "items": { - "title": "Diff Entry", - "description": "Diff Entry", + }, + "required": [ + "id", + "node_id", + "url", + "name", + "description", + "color", + "default" + ] + } + }, + "milestone": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Milestone", + "description": "A collection of related issues and pull requests.", "type": "object", "properties": { - "sha": { - "type": [ - "string", - "null" - ], + "url": { + "type": "string", + "format": "uri", "examples": [ - "bbcd538c8e72b8c175046e27cc8f907076331401" + "https://api.github.com/repos/octocat/Hello-World/milestones/1" ] }, - "filename": { + "html_url": { "type": "string", + "format": "uri", "examples": [ - "file1.txt" + "https://github.com/octocat/Hello-World/milestones/v1.0" ] }, - "status": { + "labels_url": { "type": "string", - "enum": [ - "added", - "removed", - "modified", - "renamed", - "copied", - "changed", - "unchanged" - ], + "format": "uri", "examples": [ - "added" + "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" ] }, - "additions": { + "id": { "type": "integer", "examples": [ - 103 + 1002604 ] }, - "deletions": { - "type": "integer", + "node_id": { + "type": "string", "examples": [ - 21 + "MDk6TWlsZXN0b25lMTAwMjYwNA==" ] }, - "changes": { + "number": { + "description": "The number of the milestone.", "type": "integer", "examples": [ - 124 + 42 ] }, - "blob_url": { + "state": { + "description": "The state of the milestone.", "type": "string", - "format": "uri", + "enum": [ + "open", + "closed" + ], + "default": "open", "examples": [ - "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + "open" ] }, - "raw_url": { + "title": { + "description": "The title of the milestone.", "type": "string", - "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" + "v1.0" ] }, - "contents_url": { - "type": "string", - "format": "uri", + "description": { + "type": [ + "string", + "null" + ], "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" + "Tracking milestone for version 1.0" ] }, - "patch": { + "creator": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "open_issues": { + "type": "integer", + "examples": [ + 4 + ] + }, + "closed_issues": { + "type": "integer", + "examples": [ + 8 + ] + }, + "created_at": { "type": "string", + "format": "date-time", "examples": [ - "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" + "2011-04-10T20:09:31Z" ] }, - "previous_filename": { + "updated_at": { "type": "string", + "format": "date-time", "examples": [ - "file.txt" + "2014-03-03T18:58:10Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2013-02-12T13:22:01Z" + ] + }, + "due_on": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2012-10-09T23:39:01Z" ] } }, "required": [ - "additions", - "blob_url", - "changes", - "contents_url", - "deletions", - "filename", - "raw_url", - "sha", - "status" + "closed_issues", + "creator", + "description", + "due_on", + "closed_at", + "id", + "node_id", + "labels_url", + "html_url", + "number", + "open_issues", + "state", + "title", + "url", + "created_at", + "updated_at" ] } - } + ] }, - "required": [ - "url", - "sha", - "node_id", - "html_url", - "comments_url", - "commit", - "author", - "committer", - "parents" - ] - } - }, - "examples": { - "default": { - "value": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "node_id": "MDY6Q29tbWl0NmRjYjA5YjViNTc4NzVmMzM0ZjYxYWViZWQ2OTVlMmU0MTkzZGI1ZQ==", - "html_url": "https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e/comments", - "commit": { - "url": "https://api.github.com/repos/octocat/Hello-World/git/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e", - "author": { - "name": "Monalisa Octocat", - "email": "support@github.com", - "date": "2011-04-14T16:00:49Z" - }, - "committer": { - "name": "Monalisa Octocat", - "email": "support@github.com", - "date": "2011-04-14T16:00:49Z" - }, - "message": "Fix all the bugs", - "tree": { - "url": "https://api.github.com/repos/octocat/Hello-World/tree/6dcb09b5b57875f334f61aebed695e2e4193db5e", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e" - }, - "comment_count": 0, - "verification": { - "verified": false, - "reason": "unsigned", - "signature": null, - "payload": null, - "verified_at": null - } - }, - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "committer": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "parents": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/commits/6dcb09b5b57875f334f61aebed695e2e4193db5e", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e" - } - ] - } - ] - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "pulls" - } - } - }, - "/repos/{owner}/{repo}/pulls/{pull_number}/files": { - "get": { - "summary": "List pull requests files", - "description": "Lists the files in a specified pull request.\n\n> [!NOTE]\n> Responses include a maximum of 3000 files. The paginated response returns 30 files per page by default.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", - "tags": [ - "pulls" - ], - "operationId": "pulls/list-files", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/pulls#list-pull-requests-files" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Diff Entry", - "description": "Diff Entry", - "type": "object", - "properties": { - "sha": { - "type": [ - "string", - "null" - ], - "examples": [ - "bbcd538c8e72b8c175046e27cc8f907076331401" - ] - }, - "filename": { - "type": "string", - "examples": [ - "file1.txt" - ] - }, - "status": { - "type": "string", - "enum": [ - "added", - "removed", - "modified", - "renamed", - "copied", - "changed", - "unchanged" - ], - "examples": [ - "added" - ] - }, - "additions": { - "type": "integer", - "examples": [ - 103 - ] - }, - "deletions": { - "type": "integer", - "examples": [ - 21 - ] - }, - "changes": { - "type": "integer", - "examples": [ - 124 - ] - }, - "blob_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" - ] - }, - "raw_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt" - ] - }, - "contents_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "patch": { - "type": "string", - "examples": [ - "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" - ] - }, - "previous_filename": { - "type": "string", - "examples": [ - "file.txt" - ] - } + "active_lock_reason": { + "type": [ + "string", + "null" + ], + "examples": [ + "too heated" + ] }, - "required": [ - "additions", - "blob_url", - "changes", - "contents_url", - "deletions", - "filename", - "raw_url", - "sha", - "status" - ] - } - }, - "examples": { - "default": { - "value": [ - { - "sha": "bbcd538c8e72b8c175046e27cc8f907076331401", - "filename": "file1.txt", - "status": "added", - "additions": 103, - "deletions": 21, - "changes": 124, - "blob_url": "https://github.com/octocat/Hello-World/blob/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt", - "raw_url": "https://github.com/octocat/Hello-World/raw/6dcb09b5b57875f334f61aebed695e2e4193db5e/file1.txt", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/file1.txt?ref=6dcb09b5b57875f334f61aebed695e2e4193db5e", - "patch": "@@ -132,7 +132,7 @@ module Test @@ -1000,7 +1000,7 @@ module Test" - } - ] - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] }, - "documentation_url": { - "type": "string" + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merge_commit_sha": { + "type": [ + "string", + "null" + ], + "examples": [ + "e5bd3914e2e596debea16f433f57875b5b90bcd6" + ] + }, + "assignee": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] }, - "errors": { + "assignees": { "type": "array", "items": { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "code" - ], "properties": { - "resource": { - "type": "string" + "name": { + "type": [ + "string", + "null" + ] }, - "field": { - "type": "string" + "email": { + "type": [ + "string", + "null" + ] }, - "message": { - "type": "string" + "login": { + "type": "string", + "examples": [ + "octocat" + ] }, - "code": { - "type": "string" + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] }, - "index": { - "type": "integer" + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" ] - } - } - } - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "pulls" - } - } - }, - "/repos/{owner}/{repo}/pulls/{pull_number}/merge": { - "get": { - "summary": "Check if a pull request has been merged", - "description": "Checks if a pull request has been merged into the base branch. The HTTP status of the response indicates whether or not the pull request has been merged; the response body is empty.", - "tags": [ - "pulls" - ], - "operationId": "pulls/check-if-merged", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/pulls#check-if-a-pull-request-has-been-merged" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "204": { - "description": "Response if pull request has been merged" - }, - "404": { - "description": "Not Found if pull request has not been merged" - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "pulls" - } - }, - "put": { - "summary": "Merge a pull request", - "description": "Merges a pull request into the base branch.\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"", - "tags": [ - "pulls" - ], - "operationId": "pulls/merge", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/pulls#merge-a-pull-request" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": false, - "content": { - "application/json": { - "schema": { - "type": [ - "object", - "null" - ], - "properties": { - "commit_title": { - "type": "string", - "description": "Title for the automatic commit message." - }, - "commit_message": { - "type": "string", - "description": "Extra detail to append to automatic commit message." - }, - "sha": { - "type": "string", - "description": "SHA that pull request head must match to allow merge." - }, - "merge_method": { - "type": "string", - "description": "The merge method to use.", - "enum": [ - "merge", - "squash", - "rebase" - ] - } - } - }, - "examples": { - "response-if-merge-was-successful": { - "value": { - "commit_title": "Expand enum", - "commit_message": "Add a new value to the merge_method enum" - } - } - } - } - } - }, - "responses": { - "200": { - "description": "if merge was successful", - "content": { - "application/json": { - "schema": { - "title": "Pull Request Merge Result", - "description": "Pull Request Merge Result", - "type": "object", - "properties": { - "sha": { - "type": "string" - }, - "merged": { - "type": "boolean" - }, - "message": { - "type": "string" - } - }, - "required": [ - "merged", - "message", - "sha" - ] - }, - "examples": { - "response-if-merge-was-successful": { - "value": { - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "merged": true, - "message": "Pull Request successfully merged" - } - } - } - } - } - }, - "405": { - "description": "Method Not Allowed if merge cannot be performed", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - }, - "examples": { - "response-if-merge-cannot-be-performed": { - "value": { - "message": "Pull Request is not mergeable" - } - } - } - } - } - }, - "409": { - "description": "Conflict if sha was provided and pull request head did not match", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - }, - "examples": { - "response-if-sha-was-provided-and-pull-request-head-did-not-match": { - "value": { - "message": "Head branch was modified. Review and try the merge again." - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" }, - "field": { - "type": "string" + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] }, - "message": { - "type": "string" + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] }, - "code": { - "type": "string" + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] }, - "index": { - "type": "integer" + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - } + }, + "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" + ] } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "triggersNotification": true, - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "pulls" - } - } - }, - "/repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers": { - "get": { - "summary": "Get all requested reviewers for a pull request", - "description": "Gets the users or teams whose review is requested for a pull request. Once a requested reviewer submits a review, they are no longer considered a requested reviewer. Their review will instead be returned by the [List reviews for a pull request](https://docs.github.com/rest/pulls/reviews#list-reviews-for-a-pull-request) operation.", - "tags": [ - "pulls" - ], - "operationId": "pulls/list-requested-reviewers", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/review-requests#get-all-requested-reviewers-for-a-pull-request" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Pull Request Review Request", - "description": "Pull Request Review Request", - "type": "object", - "properties": { - "users": { + "requested_reviewers": { "type": "array", "items": { "title": "Simple User", @@ -647943,7 +658111,7 @@ ] } }, - "teams": { + "requested_teams": { "type": "array", "items": { "title": "Team", @@ -648213,1670 +658381,1172 @@ "type" ] } - } - }, - "required": [ - "users", - "teams" - ] - }, - "examples": { - "default": { - "value": { - "users": [ - { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } - ], - "teams": [ - { - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "name": "Justice League", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "permission": "admin", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "parent": null - } - ] - } - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "review-requests" - } - }, - "post": { - "summary": "Request reviewers for a pull request", - "description": "Requests reviews for a pull request from a given set of users and/or teams.\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"", - "tags": [ - "pulls" - ], - "operationId": "pulls/request-reviewers", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/review-requests#request-reviewers-for-a-pull-request" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": false, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "reviewers": { - "type": "array", - "description": "An array of user `login`s that will be requested.", - "items": { - "type": "string" - } - }, - "team_reviewers": { - "type": "array", - "description": "An array of team `slug`s that will be requested.", - "items": { - "type": "string" - } - } - }, - "anyOf": [ - { - "required": [ - "reviewers" - ] - }, - { - "required": [ - "team_reviewers" - ] - } - ] - }, - "examples": { - "default": { - "value": { - "reviewers": [ - "octocat", - "hubot", - "other_user" - ], - "team_reviewers": [ - "justice-league" - ] - } - } - } - } - } - }, - "responses": { - "201": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Pull Request Simple", - "description": "Pull Request Simple", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1347" - ] }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDExOlB1bGxSZXF1ZXN0MQ==" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1347" - ] - }, - "diff_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1347.diff" - ] - }, - "patch_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1347.patch" - ] - }, - "issue_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" - ] - }, - "commits_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" - ] - }, - "review_comments_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" - ] - }, - "review_comment_url": { - "type": "string", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" - ] - }, - "comments_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" - ] - }, - "statuses_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "number": { - "type": "integer", - "examples": [ - 1347 - ] - }, - "state": { - "type": "string", - "examples": [ - "open" - ] - }, - "locked": { - "type": "boolean", - "examples": [ - true - ] - }, - "title": { - "type": "string", - "examples": [ - "new-feature" - ] - }, - "user": { - "anyOf": [ - { - "type": "null" + "head": { + "type": "object", + "properties": { + "label": { + "type": "string" }, - { - "title": "Simple User", - "description": "A GitHub user.", + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 ] }, - "login": { + "node_id": { "type": "string", "examples": [ - "octocat" + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" ] }, - "id": { - "type": "integer", - "format": "int64", + "name": { + "description": "The name of the repository.", + "type": "string", "examples": [ - 1 + "Team Environment" ] }, - "node_id": { + "full_name": { "type": "string", "examples": [ - "MDQ6VXNlcjE=" + "octocat/Hello-World" ] }, - "avatar_url": { + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "https://github.com/octocat/Hello-World" ] }, - "gravatar_id": { + "description": { "type": [ "string", "null" ], "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "This your first repo!" ] }, + "fork": { + "type": "boolean" + }, "url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat" + "https://api.github.com/repos/octocat/Hello-World" ] }, - "html_url": { + "archive_url": { "type": "string", - "format": "uri", "examples": [ - "https://github.com/octocat" + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" ] }, - "followers_url": { + "assignees_url": { "type": "string", - "format": "uri", "examples": [ - "https://api.github.com/users/octocat/followers" + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" ] }, - "following_url": { + "blobs_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" ] }, - "gists_url": { + "branches_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" ] }, - "starred_url": { + "collaborators_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" ] }, - "subscriptions_url": { + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "http://api.github.com/repos/octocat/Hello-World/contributors" ] }, - "organizations_url": { + "deployments_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/orgs" + "http://api.github.com/repos/octocat/Hello-World/deployments" ] }, - "repos_url": { + "downloads_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/repos" + "http://api.github.com/repos/octocat/Hello-World/downloads" ] }, "events_url": { "type": "string", + "format": "uri", "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "http://api.github.com/repos/octocat/Hello-World/events" ] }, - "received_events_url": { + "forks_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/received_events" + "http://api.github.com/repos/octocat/Hello-World/forks" ] }, - "type": { + "git_commits_url": { "type": "string", "examples": [ - "User" + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" ] }, - "site_admin": { - "type": "boolean" + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] }, - "starred_at": { + "git_tags_url": { "type": "string", "examples": [ - "\"2020-07-09T00:17:55Z\"" + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" ] }, - "user_view_type": { + "git_url": { "type": "string", "examples": [ - "public" + "git:github.com/octocat/Hello-World.git" ] - } - }, - "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" - ] - } - ] - }, - "body": { - "type": [ - "string", - "null" - ], - "examples": [ - "Please pull these awesome changes" - ] - }, - "labels": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "integer", - "format": "int64" - }, - "node_id": { - "type": "string" - }, - "url": { - "type": "string" - }, - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "color": { - "type": "string" - }, - "default": { - "type": "boolean" - } - }, - "required": [ - "id", - "node_id", - "url", - "name", - "description", - "color", - "default" - ] - } - }, - "milestone": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Milestone", - "description": "A collection of related issues and pull requests.", - "type": "object", - "properties": { - "url": { + }, + "issue_comment_url": { "type": "string", - "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones/1" + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" ] }, - "html_url": { + "issue_events_url": { "type": "string", - "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World/milestones/v1.0" + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" ] }, "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" + "http://api.github.com/repos/octocat/Hello-World/languages" ] }, - "id": { - "type": "integer", + "merges_url": { + "type": "string", + "format": "uri", "examples": [ - 1002604 + "http://api.github.com/repos/octocat/Hello-World/merges" ] }, - "node_id": { + "milestones_url": { "type": "string", "examples": [ - "MDk6TWlsZXN0b25lMTAwMjYwNA==" + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" ] }, - "number": { - "description": "The number of the milestone.", - "type": "integer", + "notifications_url": { + "type": "string", "examples": [ - 42 + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" ] }, - "state": { - "description": "The state of the milestone.", + "pulls_url": { "type": "string", - "enum": [ - "open", - "closed" - ], - "default": "open", "examples": [ - "open" + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" ] }, - "title": { - "description": "The title of the milestone.", + "releases_url": { "type": "string", "examples": [ - "v1.0" + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" ] }, - "description": { - "type": [ - "string", - "null" - ], + "ssh_url": { + "type": "string", "examples": [ - "Tracking milestone for version 1.0" + "git@github.com:octocat/Hello-World.git" ] }, - "creator": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" ] }, - "open_issues": { - "type": "integer", + "statuses_url": { + "type": "string", "examples": [ - 4 + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" ] }, - "closed_issues": { - "type": "integer", + "subscribers_url": { + "type": "string", + "format": "uri", "examples": [ - 8 + "http://api.github.com/repos/octocat/Hello-World/subscribers" ] }, - "created_at": { + "subscription_url": { "type": "string", - "format": "date-time", + "format": "uri", "examples": [ - "2011-04-10T20:09:31Z" + "http://api.github.com/repos/octocat/Hello-World/subscription" ] }, - "updated_at": { + "tags_url": { "type": "string", - "format": "date-time", + "format": "uri", "examples": [ - "2014-03-03T18:58:10Z" + "http://api.github.com/repos/octocat/Hello-World/tags" ] }, - "closed_at": { + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { "type": [ "string", "null" ], - "format": "date-time", + "format": "uri", "examples": [ - "2013-02-12T13:22:01Z" + "git:git.example.com/octocat/Hello-World" ] }, - "due_on": { + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { "type": [ "string", "null" ], - "format": "date-time", + "format": "uri", "examples": [ - "2012-10-09T23:39:01Z" + "https://github.com" ] - } - }, - "required": [ - "closed_issues", - "creator", - "description", - "due_on", - "closed_at", - "id", - "node_id", - "labels_url", - "html_url", - "number", - "open_issues", - "state", - "title", - "url", - "created_at", - "updated_at" - ] - } - ] - }, - "active_lock_reason": { - "type": [ - "string", - "null" - ], - "examples": [ - "too heated" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "closed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "merged_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "merge_commit_sha": { - "type": [ - "string", - "null" - ], - "examples": [ - "e5bd3914e2e596debea16f433f57875b5b90bcd6" - ] - }, - "assignee": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { + }, + "language": { "type": [ "string", "null" ] }, - "email": { - "type": [ - "string", - "null" + "forks_count": { + "type": "integer", + "examples": [ + 9 ] }, - "login": { - "type": "string", + "stargazers_count": { + "type": "integer", "examples": [ - "octocat" + 80 ] }, - "id": { + "watchers_count": { "type": "integer", - "format": "int64", "examples": [ - 1 + 80 ] }, - "node_id": { + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", "type": "string", "examples": [ - "MDQ6VXNlcjE=" + "master" ] }, - "avatar_url": { + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", "type": "string", - "format": "uri", + "enum": [ + "all", + "collaborators_only" + ], "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "all" ] }, - "gravatar_id": { + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { "type": [ "string", "null" ], + "format": "date-time", "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" + "2011-01-26T19:06:43Z" ] }, - "html_url": { - "type": "string", - "format": "uri", + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "https://github.com/octocat" + "2011-01-26T19:01:12Z" ] }, - "followers_url": { - "type": "string", - "format": "uri", + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "https://api.github.com/users/octocat/followers" + "2011-01-26T19:14:43Z" ] }, - "following_url": { - "type": "string", + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + true ] }, - "gists_url": { - "type": "string", + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + true ] }, - "starred_url": { - "type": "string", + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + false ] }, - "subscriptions_url": { - "type": "string", - "format": "uri", + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + false ] }, - "organizations_url": { - "type": "string", - "format": "uri", + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/orgs" + false ] }, - "repos_url": { + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." }, - "events_url": { + "squash_merge_commit_message": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." }, - "received_events_url": { + "merge_commit_title": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." }, - "type": { + "merge_commit_message": { "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", "examples": [ - "User" + true ] }, - "site_admin": { + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, "type": "boolean" }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, "starred_at": { "type": "string", "examples": [ - "\"2020-07-09T00:17:55Z\"" + "\"2020-07-09T00:17:42Z\"" ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } } }, "required": [ - "avatar_url", + "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", - "followers_url", - "following_url", - "gists_url", - "gravatar_id", + "fork", + "forks_url", + "full_name", + "git_commits_url", + "git_refs_url", + "git_tags_url", + "hooks_url", "html_url", "id", "node_id", - "login", - "organizations_url", - "received_events_url", - "repos_url", - "site_admin", - "starred_url", - "subscriptions_url", - "type", - "url" + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" ] - } - ] - }, - "assignees": { - "type": "array", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } }, - "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" - ] - } - }, - "requested_reviewers": { - "type": "array", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "sha": { + "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" - ] - } - }, - "requested_teams": { - "type": "array", - "items": { - "title": "Team", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "slug": { - "type": "string" - }, - "description": { - "type": [ - "string", - "null" - ] - }, - "privacy": { - "type": "string" - }, - "notification_setting": { - "type": "string" - }, - "permission": { - "type": "string" - }, - "permissions": { - "type": "object", - "properties": { - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - }, - "admin": { - "type": "boolean" - } + "user": { + "anyOf": [ + { + "type": "null" }, - "required": [ - "pull", - "triage", - "push", - "maintain", - "admin" - ] - }, - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "members_url": { - "type": "string" - }, - "repositories_url": { - "type": "string", - "format": "uri" - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "access_source": { - "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", - "type": "string", - "enum": [ - "direct", - "organization", - "enterprise" - ], - "examples": [ - "direct" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - }, - "parent": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Team Simple", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the team", - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VGVhbTE=" - ] - }, - "url": { - "description": "URL for the team", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1" - ] - }, - "members_url": { - "type": "string", - "examples": [ - "https://api.github.com/organizations/1/team/1/members{/member}" - ] - }, - "name": { - "description": "Name of the team", - "type": "string", - "examples": [ - "Justice League" - ] - }, - "description": { - "description": "Description of the team", - "type": [ - "string", - "null" - ], - "examples": [ - "A great team." - ] - }, - "permission": { - "description": "Permission that the team will have for its repositories", - "type": "string", - "examples": [ - "admin" - ] - }, - "privacy": { - "description": "The level of privacy this team should have", - "type": "string", - "examples": [ - "closed" - ] - }, - "notification_setting": { - "description": "The notification setting the team has set", - "type": "string", - "examples": [ - "notifications_enabled" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "repositories_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1/repos" - ] - }, - "slug": { - "type": "string", - "examples": [ - "justice-league" - ] - }, - "ldap_dn": { - "description": "Distinguished Name (DN) that team maps to within LDAP environment", - "type": "string", - "examples": [ - "uid=example,ou=users,dc=github,dc=com" - ] - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - } + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "type" - ] - } - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "parent", - "type" - ] - } + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] }, - "head": { + "base": { "type": "object", "properties": { "label": { @@ -650777,1255 +660447,3014 @@ } } }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "_links": { + "type": "object", + "properties": { + "comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "commits": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "statuses": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "issue": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comment": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "comments", + "commits", + "statuses", + "html", + "issue", + "review_comments", + "review_comment", + "self" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + }, + "auto_merge": { + "title": "Auto merge", + "description": "The status of auto merging a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "enabled_by": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "merge_method": { + "type": "string", + "description": "The merge method to use.", + "enum": [ + "merge", + "squash", + "rebase" + ] + }, + "commit_title": { + "type": "string", + "description": "Title for the merge commit message." + }, + "commit_message": { + "type": "string", + "description": "Commit message for the merge commit." + } + }, + "required": [ + "enabled_by", + "merge_method", + "commit_title", + "commit_message" + ] + }, + "stack": { + "title": "Pull Request Stack", + "description": "The stack information associated with a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The base ref of the stack this pull request belongs to." + }, + "sha": { + "type": "string", + "description": "The base SHA of the stack this pull request belongs to." + } + }, + "required": [ + "ref", + "sha" + ] + }, + "size": { + "type": "integer", + "description": "The total number of pull requests in the stack." + }, + "position": { + "type": "integer", + "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + }, + "id": { + "type": "integer", + "description": "The ID of the stack that this pull request belongs to." + }, + "number": { + "type": "integer", + "description": "The number of the stack that this pull request belongs to." + } + }, + "required": [ + "base" + ] + }, + "draft": { + "description": "Indicates whether or not the pull request is a draft.", + "type": "boolean", + "examples": [ + false + ] + } + }, + "required": [ + "_links", + "assignee", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merge_commit_sha", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347", + "id": 1, + "node_id": "MDExOlB1bGxSZXF1ZXN0MQ==", + "html_url": "https://github.com/octocat/Hello-World/pull/1347", + "diff_url": "https://github.com/octocat/Hello-World/pull/1347.diff", + "patch_url": "https://github.com/octocat/Hello-World/pull/1347.patch", + "issue_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits", + "review_comments_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments", + "review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e", + "number": 1347, + "state": "open", + "locked": true, + "title": "Amazing new feature", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Please pull these awesome changes in!", + "labels": [ + { + "id": 208045946, + "node_id": "MDU6TGFiZWwyMDgwNDU5NDY=", + "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", + "name": "bug", + "description": "Something isn't working", + "color": "f29513", + "default": true + } + ], + "milestone": { + "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", + "html_url": "https://github.com/octocat/Hello-World/milestones/v1.0", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels", + "id": 1002604, + "node_id": "MDk6TWlsZXN0b25lMTAwMjYwNA==", + "number": 1, + "state": "open", + "title": "v1.0", + "description": "Tracking milestone for version 1.0", + "creator": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "open_issues": 4, + "closed_issues": 8, + "created_at": "2011-04-10T20:09:31Z", + "updated_at": "2014-03-03T18:58:10Z", + "closed_at": "2013-02-12T13:22:01Z", + "due_on": "2012-10-09T23:39:01Z" + }, + "active_lock_reason": "too heated", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:01:12Z", + "closed_at": "2011-01-26T19:01:12Z", + "merged_at": "2011-01-26T19:01:12Z", + "merge_commit_sha": "e5bd3914e2e596debea16f433f57875b5b90bcd6", + "assignee": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + { + "login": "hubot", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/hubot_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/hubot", + "html_url": "https://github.com/hubot", + "followers_url": "https://api.github.com/users/hubot/followers", + "following_url": "https://api.github.com/users/hubot/following{/other_user}", + "gists_url": "https://api.github.com/users/hubot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/hubot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/hubot/subscriptions", + "organizations_url": "https://api.github.com/users/hubot/orgs", + "repos_url": "https://api.github.com/users/hubot/repos", + "events_url": "https://api.github.com/users/hubot/events{/privacy}", + "received_events_url": "https://api.github.com/users/hubot/received_events", + "type": "User", + "site_admin": true + } + ], + "requested_reviewers": [ + { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + { + "login": "hubot", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/hubot_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/hubot", + "html_url": "https://github.com/hubot", + "followers_url": "https://api.github.com/users/hubot/followers", + "following_url": "https://api.github.com/users/hubot/following{/other_user}", + "gists_url": "https://api.github.com/users/hubot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/hubot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/hubot/subscriptions", + "organizations_url": "https://api.github.com/users/hubot/orgs", + "repos_url": "https://api.github.com/users/hubot/repos", + "events_url": "https://api.github.com/users/hubot/events{/privacy}", + "received_events_url": "https://api.github.com/users/hubot/received_events", + "type": "User", + "site_admin": true + }, + { + "login": "other_user", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/other_user_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/other_user", + "html_url": "https://github.com/other_user", + "followers_url": "https://api.github.com/users/other_user/followers", + "following_url": "https://api.github.com/users/other_user/following{/other_user}", + "gists_url": "https://api.github.com/users/other_user/gists{/gist_id}", + "starred_url": "https://api.github.com/users/other_user/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/other_user/subscriptions", + "organizations_url": "https://api.github.com/users/other_user/orgs", + "repos_url": "https://api.github.com/users/other_user/repos", + "events_url": "https://api.github.com/users/other_user/events{/privacy}", + "received_events_url": "https://api.github.com/users/other_user/received_events", + "type": "User", + "site_admin": false + } + ], + "requested_teams": [ + { + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "name": "Justice League", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "permission": "admin", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "parent": null + } + ], + "head": { + "label": "octocat:new-topic", + "ref": "new-topic", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "repo": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "template_repository": null, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://github.com/licenses/mit" + }, + "forks": 1, + "open_issues": 1, + "watchers": 1 + } + }, + "base": { + "label": "octocat:master", + "ref": "master", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false }, - "sha": { - "type": "string" + "repo": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "template_repository": null, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://api.github.com/licenses/mit" + }, + "forks": 1, + "open_issues": 1, + "watchers": 1 + } + }, + "_links": { + "self": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347" }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] + "html": { + "href": "https://github.com/octocat/Hello-World/pull/1347" + }, + "issue": { + "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347" + }, + "comments": { + "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" + }, + "review_comments": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" + }, + "review_comment": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" + }, + "commits": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + }, + "statuses": { + "href": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" } }, - "required": [ - "label", - "ref", - "repo", - "sha", - "user" + "author_association": "OWNER", + "auto_merge": null, + "draft": false + } + } + } + } + } + }, + "422": { + "description": "Unprocessable Entity if user is not a collaborator" + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "triggersNotification": true, + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "review-requests" + } + }, + "delete": { + "summary": "Remove requested reviewers from a pull request", + "description": "Removes review requests from a pull request for a given set of users and/or teams.", + "tags": [ + "pulls" + ], + "operationId": "pulls/remove-requested-reviewers", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/review-requests#remove-requested-reviewers-from-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "reviewers": { + "type": "array", + "description": "An array of user `login`s that will be removed.", + "items": { + "type": "string" + } + }, + "team_reviewers": { + "type": "array", + "description": "An array of team `slug`s that will be removed.", + "items": { + "type": "string" + } + } + }, + "required": [ + "reviewers" + ] + }, + "examples": { + "default": { + "value": { + "reviewers": [ + "octocat", + "hubot", + "other_user" + ], + "team_reviewers": [ + "justice-league" + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Simple", + "description": "Pull Request Simple", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347" ] }, - "base": { - "type": "object", - "properties": { - "label": { - "type": "string" - }, - "ref": { - "type": "string" - }, - "repo": { - "title": "Repository", - "description": "A repository on GitHub.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "description": "The name of the repository.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "forks": { - "type": "integer" - }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } - }, - "required": [ - "admin", - "pull", - "push" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOlB1bGxSZXF1ZXN0MQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347" + ] + }, + "diff_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347.diff" + ] + }, + "patch_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347.patch" + ] + }, + "issue_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] + }, + "commits_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + ] + }, + "review_comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" + ] + }, + "review_comment_url": { + "type": "string", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" + ] + }, + "statuses_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "number": { + "type": "integer", + "examples": [ + 1347 + ] + }, + "state": { + "type": "string", + "examples": [ + "open" + ] + }, + "locked": { + "type": "boolean", + "examples": [ + true + ] + }, + "title": { + "type": "string", + "examples": [ + "new-feature" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" ] }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, - "type": "boolean" + "email": { + "type": [ + "string", + "null" + ] }, - "html_url": { + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World" + "https://github.com/images/error/octocat_happy.gif" ] }, - "description": { + "gravatar_id": { "type": [ "string", "null" ], "examples": [ - "This your first repo!" + "41d064eb2195891e12d0413f63227ea7" ] }, - "fork": { - "type": "boolean" - }, "url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World" + "https://api.github.com/users/octocat" ] }, - "archive_url": { + "html_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + "https://github.com/octocat" ] }, - "assignees_url": { + "followers_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + "https://api.github.com/users/octocat/followers" ] }, - "blobs_url": { + "following_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "branches_url": { + "gists_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "collaborators_url": { + "starred_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "comments_url": { + "subscriptions_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + "https://api.github.com/users/octocat/subscriptions" ] }, - "commits_url": { + "organizations_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + "https://api.github.com/users/octocat/orgs" ] }, - "compare_url": { + "repos_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + "https://api.github.com/users/octocat/repos" ] }, - "contents_url": { + "events_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "contributors_url": { + "received_events_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" + "https://api.github.com/users/octocat/received_events" ] }, - "deployments_url": { + "type": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" + "User" ] }, - "downloads_url": { + "site_admin": { + "type": "boolean" + }, + "starred_at": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" + "\"2020-07-09T00:17:55Z\"" ] }, - "events_url": { + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "type": [ + "string", + "null" + ], + "examples": [ + "Please pull these awesome changes" + ] + }, + "labels": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "color": { + "type": "string" + }, + "default": { + "type": "boolean" + } + }, + "required": [ + "id", + "node_id", + "url", + "name", + "description", + "color", + "default" + ] + } + }, + "milestone": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Milestone", + "description": "A collection of related issues and pull requests.", + "type": "object", + "properties": { + "url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" + "https://api.github.com/repos/octocat/Hello-World/milestones/1" ] }, - "forks_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" + "https://github.com/octocat/Hello-World/milestones/v1.0" ] }, - "git_commits_url": { + "labels_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" ] }, - "git_refs_url": { - "type": "string", + "id": { + "type": "integer", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + 1002604 ] }, - "git_tags_url": { + "node_id": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + "MDk6TWlsZXN0b25lMTAwMjYwNA==" ] }, - "git_url": { - "type": "string", + "number": { + "description": "The number of the milestone.", + "type": "integer", "examples": [ - "git:github.com/octocat/Hello-World.git" + 42 ] }, - "issue_comment_url": { + "state": { + "description": "The state of the milestone.", "type": "string", + "enum": [ + "open", + "closed" + ], + "default": "open", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + "open" ] }, - "issue_events_url": { + "title": { + "description": "The title of the milestone.", "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + "v1.0" ] }, - "issues_url": { - "type": "string", + "description": { + "type": [ + "string", + "null" + ], "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + "Tracking milestone for version 1.0" ] }, - "keys_url": { - "type": "string", + "creator": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "open_issues": { + "type": "integer", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + 4 ] }, - "labels_url": { - "type": "string", + "closed_issues": { + "type": "integer", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + 8 ] }, - "languages_url": { + "created_at": { "type": "string", - "format": "uri", + "format": "date-time", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" + "2011-04-10T20:09:31Z" ] }, - "merges_url": { + "updated_at": { "type": "string", - "format": "uri", + "format": "date-time", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" + "2014-03-03T18:58:10Z" ] }, - "milestones_url": { - "type": "string", + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + "2013-02-12T13:22:01Z" ] }, - "notifications_url": { - "type": "string", + "due_on": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + "2012-10-09T23:39:01Z" + ] + } + }, + "required": [ + "closed_issues", + "creator", + "description", + "due_on", + "closed_at", + "id", + "node_id", + "labels_url", + "html_url", + "number", + "open_issues", + "state", + "title", + "url", + "created_at", + "updated_at" + ] + } + ] + }, + "active_lock_reason": { + "type": [ + "string", + "null" + ], + "examples": [ + "too heated" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merge_commit_sha": { + "type": [ + "string", + "null" + ], + "examples": [ + "e5bd3914e2e596debea16f433f57875b5b90bcd6" + ] + }, + "assignee": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" ] }, - "pulls_url": { + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + "octocat" ] }, - "releases_url": { - "type": "string", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + 1 ] }, - "ssh_url": { + "node_id": { "type": "string", "examples": [ - "git@github.com:octocat/Hello-World.git" + "MDQ6VXNlcjE=" ] }, - "stargazers_url": { + "avatar_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" + "https://github.com/images/error/octocat_happy.gif" ] }, - "statuses_url": { - "type": "string", + "gravatar_id": { + "type": [ + "string", + "null" + ], "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + "41d064eb2195891e12d0413f63227ea7" ] }, - "subscribers_url": { + "url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" + "https://api.github.com/users/octocat" ] }, - "subscription_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" + "https://github.com/octocat" ] }, - "tags_url": { + "followers_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" + "https://api.github.com/users/octocat/followers" ] }, - "teams_url": { + "following_url": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "trees_url": { + "gists_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "clone_url": { + "starred_url": { "type": "string", "examples": [ - "https://github.com/octocat/Hello-World.git" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "mirror_url": { - "type": [ - "string", - "null" - ], + "subscriptions_url": { + "type": "string", "format": "uri", "examples": [ - "git:git.example.com/octocat/Hello-World" + "https://api.github.com/users/octocat/subscriptions" ] }, - "hooks_url": { + "organizations_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" + "https://api.github.com/users/octocat/orgs" ] }, - "svn_url": { + "repos_url": { "type": "string", "format": "uri", "examples": [ - "https://svn.github.com/octocat/Hello-World" + "https://api.github.com/users/octocat/repos" ] }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", + "events_url": { + "type": "string", "examples": [ - "https://github.com" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "language": { - "type": [ - "string", - "null" + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" ] }, - "forks_count": { - "type": "integer", + "type": { + "type": "string", "examples": [ - 9 + "User" ] }, - "stargazers_count": { - "type": "integer", + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", "examples": [ - 80 + "\"2020-07-09T00:17:55Z\"" ] }, - "watchers_count": { - "type": "integer", + "user_view_type": { + "type": "string", "examples": [ - 80 + "public" ] + } + }, + "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" + ] + } + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_reviewers": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } }, - "size": { - "description": "The size of the repository, in kilobytes. Size is calculated hourly. When a repository is initially created, the size is 0.", + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" + ], + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } + }, + "head": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", "type": "integer", + "format": "int64", "examples": [ - 108 + 42 ] }, - "default_branch": { - "description": "The default branch of the repository.", + "node_id": { "type": "string", "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "topics": { - "type": "array", - "items": { - "type": "string" - } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_downloads": { - "description": "Whether downloads are enabled.", - "default": true, - "type": "boolean", - "deprecated": true, - "examples": [ - true - ] - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" ] }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "name": { + "description": "The name of the repository.", "type": "string", - "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false + "Team Environment" ] }, - "use_squash_pr_title_as_default": { - "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", - "default": false, - "deprecated": true - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { + "full_name": { "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", "examples": [ - true + "octocat/Hello-World" ] }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "master_branch": { - "type": "string" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:42Z\"" + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } ] }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" + "forks": { + "type": "integer" }, - "code_search_index_status": { + "permissions": { "type": "object", - "description": "The status of the code search index for this repository", "properties": { - "lexical_search_ok": { + "admin": { "type": "boolean" }, - "lexical_commit_sha": { - "type": "string" + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" } - } - } - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] - }, - "sha": { - "type": "string" - }, - "user": { - "anyOf": [ - { - "type": "null" + }, + "required": [ + "admin", + "pull", + "push" + ] }, - { + "owner": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -652064,1977 +663493,2310 @@ "avatar_url": { "type": "string", "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - } - }, - "required": [ - "label", - "ref", - "repo", - "sha", - "user" - ] - }, - "_links": { - "type": "object", - "properties": { - "comments": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "commits": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "statuses": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "html": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "issue": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "review_comments": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "review_comment": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "self": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - } - }, - "required": [ - "comments", - "commits", - "statuses", - "html", - "issue", - "review_comments", - "review_comment", - "self" - ] - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" - ] - }, - "auto_merge": { - "title": "Auto merge", - "description": "The status of auto merging a pull request.", - "type": [ - "object", - "null" - ], - "properties": { - "enabled_by": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" ] }, - "email": { + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { "type": [ "string", "null" + ], + "examples": [ + "This your first repo!" ] }, - "login": { + "fork": { + "type": "boolean" + }, + "url": { "type": "string", + "format": "uri", "examples": [ - "octocat" + "https://api.github.com/repos/octocat/Hello-World" ] }, - "id": { - "type": "integer", - "format": "int64", + "archive_url": { + "type": "string", "examples": [ - 1 + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" ] }, - "node_id": { + "assignees_url": { "type": "string", "examples": [ - "MDQ6VXNlcjE=" + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" ] }, - "avatar_url": { + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "http://api.github.com/repos/octocat/Hello-World/contributors" ] }, - "gravatar_id": { - "type": [ - "string", - "null" - ], + "deployments_url": { + "type": "string", + "format": "uri", "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "http://api.github.com/repos/octocat/Hello-World/deployments" ] }, - "url": { + "downloads_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat" + "http://api.github.com/repos/octocat/Hello-World/downloads" ] }, - "html_url": { + "events_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat" + "http://api.github.com/repos/octocat/Hello-World/events" ] }, - "followers_url": { + "forks_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/followers" + "http://api.github.com/repos/octocat/Hello-World/forks" ] }, - "following_url": { + "git_commits_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" ] }, - "gists_url": { + "git_refs_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" ] }, - "starred_url": { + "git_tags_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" ] }, - "subscriptions_url": { + "git_url": { "type": "string", - "format": "uri", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "git:github.com/octocat/Hello-World.git" ] }, - "organizations_url": { + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/orgs" + "http://api.github.com/repos/octocat/Hello-World/languages" ] }, - "repos_url": { + "merges_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/repos" + "http://api.github.com/repos/octocat/Hello-World/merges" ] }, - "events_url": { + "milestones_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" ] }, - "received_events_url": { + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/received_events" + "http://api.github.com/repos/octocat/Hello-World/stargazers" ] }, - "type": { + "statuses_url": { "type": "string", "examples": [ - "User" + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" ] }, - "site_admin": { - "type": "boolean" + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] }, - "starred_at": { + "subscription_url": { "type": "string", + "format": "uri", "examples": [ - "\"2020-07-09T00:17:55Z\"" + "http://api.github.com/repos/octocat/Hello-World/subscription" ] }, - "user_view_type": { + "tags_url": { "type": "string", + "format": "uri", "examples": [ - "public" + "http://api.github.com/repos/octocat/Hello-World/tags" ] - } - }, - "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" - ] - }, - "merge_method": { - "type": "string", - "description": "The merge method to use.", - "enum": [ - "merge", - "squash", - "rebase" - ] - }, - "commit_title": { - "type": "string", - "description": "Title for the merge commit message." - }, - "commit_message": { - "type": "string", - "description": "Commit message for the merge commit." - } - }, - "required": [ - "enabled_by", - "merge_method", - "commit_title", - "commit_message" - ] - }, - "stack": { - "title": "Pull Request Stack", - "description": "The stack information associated with a pull request.", - "type": [ - "object", - "null" - ], - "properties": { - "base": { - "type": "object", - "properties": { - "ref": { + }, + "teams_url": { "type": "string", - "description": "The base ref of the stack this pull request belongs to." + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] }, - "sha": { + "trees_url": { "type": "string", - "description": "The base SHA of the stack this pull request belongs to." - } - }, - "required": [ - "ref", - "sha" - ] - }, - "size": { - "type": "integer", - "description": "The total number of pull requests in the stack." - }, - "position": { - "type": "integer", - "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." - }, - "id": { - "type": "integer", - "description": "The ID of the stack that this pull request belongs to." - }, - "number": { - "type": "integer", - "description": "The number of the stack that this pull request belongs to." - } - }, - "required": [ - "base" - ] - }, - "draft": { - "description": "Indicates whether or not the pull request is a draft.", - "type": "boolean", - "examples": [ - false - ] - } - }, - "required": [ - "_links", - "assignee", - "labels", - "base", - "body", - "closed_at", - "comments_url", - "commits_url", - "created_at", - "diff_url", - "head", - "html_url", - "id", - "node_id", - "issue_url", - "merge_commit_sha", - "merged_at", - "milestone", - "number", - "patch_url", - "review_comment_url", - "review_comments_url", - "statuses_url", - "state", - "locked", - "title", - "updated_at", - "url", - "user", - "author_association", - "auto_merge" - ] - }, - "examples": { - "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347", - "id": 1, - "node_id": "MDExOlB1bGxSZXF1ZXN0MQ==", - "html_url": "https://github.com/octocat/Hello-World/pull/1347", - "diff_url": "https://github.com/octocat/Hello-World/pull/1347.diff", - "patch_url": "https://github.com/octocat/Hello-World/pull/1347.patch", - "issue_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits", - "review_comments_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments", - "review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e", - "number": 1347, - "state": "open", - "locked": true, - "title": "Amazing new feature", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "Please pull these awesome changes in!", - "labels": [ - { - "id": 208045946, - "node_id": "MDU6TGFiZWwyMDgwNDU5NDY=", - "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", - "name": "bug", - "description": "Something isn't working", - "color": "f29513", - "default": true - } - ], - "milestone": { - "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", - "html_url": "https://github.com/octocat/Hello-World/milestones/v1.0", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels", - "id": 1002604, - "node_id": "MDk6TWlsZXN0b25lMTAwMjYwNA==", - "number": 1, - "state": "open", - "title": "v1.0", - "description": "Tracking milestone for version 1.0", - "creator": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "open_issues": 4, - "closed_issues": 8, - "created_at": "2011-04-10T20:09:31Z", - "updated_at": "2014-03-03T18:58:10Z", - "closed_at": "2013-02-12T13:22:01Z", - "due_on": "2012-10-09T23:39:01Z" - }, - "active_lock_reason": "too heated", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:01:12Z", - "closed_at": "2011-01-26T19:01:12Z", - "merged_at": "2011-01-26T19:01:12Z", - "merge_commit_sha": "e5bd3914e2e596debea16f433f57875b5b90bcd6", - "assignee": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "assignees": [ - { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - { - "login": "hubot", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/hubot_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/hubot", - "html_url": "https://github.com/hubot", - "followers_url": "https://api.github.com/users/hubot/followers", - "following_url": "https://api.github.com/users/hubot/following{/other_user}", - "gists_url": "https://api.github.com/users/hubot/gists{/gist_id}", - "starred_url": "https://api.github.com/users/hubot/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/hubot/subscriptions", - "organizations_url": "https://api.github.com/users/hubot/orgs", - "repos_url": "https://api.github.com/users/hubot/repos", - "events_url": "https://api.github.com/users/hubot/events{/privacy}", - "received_events_url": "https://api.github.com/users/hubot/received_events", - "type": "User", - "site_admin": true - } - ], - "requested_reviewers": [ - { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - { - "login": "hubot", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/hubot_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/hubot", - "html_url": "https://github.com/hubot", - "followers_url": "https://api.github.com/users/hubot/followers", - "following_url": "https://api.github.com/users/hubot/following{/other_user}", - "gists_url": "https://api.github.com/users/hubot/gists{/gist_id}", - "starred_url": "https://api.github.com/users/hubot/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/hubot/subscriptions", - "organizations_url": "https://api.github.com/users/hubot/orgs", - "repos_url": "https://api.github.com/users/hubot/repos", - "events_url": "https://api.github.com/users/hubot/events{/privacy}", - "received_events_url": "https://api.github.com/users/hubot/received_events", - "type": "User", - "site_admin": true - }, - { - "login": "other_user", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/other_user_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/other_user", - "html_url": "https://github.com/other_user", - "followers_url": "https://api.github.com/users/other_user/followers", - "following_url": "https://api.github.com/users/other_user/following{/other_user}", - "gists_url": "https://api.github.com/users/other_user/gists{/gist_id}", - "starred_url": "https://api.github.com/users/other_user/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/other_user/subscriptions", - "organizations_url": "https://api.github.com/users/other_user/orgs", - "repos_url": "https://api.github.com/users/other_user/repos", - "events_url": "https://api.github.com/users/other_user/events{/privacy}", - "received_events_url": "https://api.github.com/users/other_user/received_events", - "type": "User", - "site_admin": false - } - ], - "requested_teams": [ - { - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "name": "Justice League", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "permission": "admin", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "parent": null - } - ], - "head": { - "label": "octocat:new-topic", - "ref": "new-topic", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "repo": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "template_repository": null, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://github.com/licenses/mit" - }, - "forks": 1, - "open_issues": 1, - "watchers": 1 - } - }, - "base": { - "label": "octocat:master", - "ref": "master", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "repo": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "template_repository": null, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://api.github.com/licenses/mit" + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } }, - "forks": 1, - "open_issues": 1, - "watchers": 1 - } - }, - "_links": { - "self": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347" - }, - "html": { - "href": "https://github.com/octocat/Hello-World/pull/1347" - }, - "issue": { - "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347" - }, - "comments": { - "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" - }, - "review_comments": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" - }, - "review_comment": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] }, - "commits": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + "sha": { + "type": "string" }, - "statuses": { - "href": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] } }, - "author_association": "OWNER", - "auto_merge": null, - "draft": false - } - } - } - } - } - }, - "422": { - "description": "Unprocessable Entity if user is not a collaborator" - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "triggersNotification": true, - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "review-requests" - } - }, - "delete": { - "summary": "Remove requested reviewers from a pull request", - "description": "Removes review requests from a pull request for a given set of users and/or teams.", - "tags": [ - "pulls" - ], - "operationId": "pulls/remove-requested-reviewers", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/review-requests#remove-requested-reviewers-from-a-pull-request" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "reviewers": { - "type": "array", - "description": "An array of user `login`s that will be removed.", - "items": { - "type": "string" - } - }, - "team_reviewers": { - "type": "array", - "description": "An array of team `slug`s that will be removed.", - "items": { - "type": "string" - } - } - }, - "required": [ - "reviewers" - ] - }, - "examples": { - "default": { - "value": { - "reviewers": [ - "octocat", - "hubot", - "other_user" - ], - "team_reviewers": [ - "justice-league" - ] - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Pull Request Simple", - "description": "Pull Request Simple", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1347" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDExOlB1bGxSZXF1ZXN0MQ==" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1347" - ] - }, - "diff_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1347.diff" - ] - }, - "patch_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1347.patch" - ] - }, - "issue_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" - ] - }, - "commits_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" - ] - }, - "review_comments_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" - ] - }, - "review_comment_url": { - "type": "string", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" - ] - }, - "comments_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" - ] - }, - "statuses_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "number": { - "type": "integer", - "examples": [ - 1347 - ] - }, - "state": { - "type": "string", - "examples": [ - "open" - ] - }, - "locked": { - "type": "boolean", - "examples": [ - true - ] - }, - "title": { - "type": "string", - "examples": [ - "new-feature" + "required": [ + "label", + "ref", + "repo", + "sha", + "user" ] }, - "user": { - "anyOf": [ - { - "type": "null" + "base": { + "type": "object", + "properties": { + "label": { + "type": "string" }, - { - "title": "Simple User", - "description": "A GitHub user.", + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", "type": "object", "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, "name": { - "type": [ - "string", - "null" + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" ] }, - "email": { + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { "type": [ "string", "null" + ], + "examples": [ + "This your first repo!" ] }, - "login": { + "fork": { + "type": "boolean" + }, + "url": { "type": "string", + "format": "uri", "examples": [ - "octocat" + "https://api.github.com/repos/octocat/Hello-World" ] }, - "id": { - "type": "integer", - "format": "int64", + "archive_url": { + "type": "string", "examples": [ - 1 + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" ] }, - "node_id": { + "assignees_url": { "type": "string", "examples": [ - "MDQ6VXNlcjE=" + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" ] }, - "avatar_url": { + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "http://api.github.com/repos/octocat/Hello-World/contributors" ] }, - "gravatar_id": { - "type": [ - "string", - "null" - ], + "deployments_url": { + "type": "string", + "format": "uri", "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "http://api.github.com/repos/octocat/Hello-World/deployments" ] }, - "url": { + "downloads_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat" + "http://api.github.com/repos/octocat/Hello-World/downloads" ] }, - "html_url": { + "events_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat" + "http://api.github.com/repos/octocat/Hello-World/events" ] }, - "followers_url": { + "forks_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/followers" + "http://api.github.com/repos/octocat/Hello-World/forks" ] }, - "following_url": { + "git_commits_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" ] }, - "gists_url": { + "git_refs_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" ] }, - "starred_url": { + "git_tags_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" ] }, - "subscriptions_url": { + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "http://api.github.com/repos/octocat/Hello-World/languages" ] }, - "organizations_url": { + "merges_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/orgs" + "http://api.github.com/repos/octocat/Hello-World/merges" ] }, - "repos_url": { + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/repos" + "http://api.github.com/repos/octocat/Hello-World/stargazers" ] }, - "events_url": { + "statuses_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" ] }, - "received_events_url": { + "subscribers_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/received_events" + "http://api.github.com/repos/octocat/Hello-World/subscribers" ] }, - "type": { + "subscription_url": { "type": "string", + "format": "uri", "examples": [ - "User" + "http://api.github.com/repos/octocat/Hello-World/subscription" ] }, - "site_admin": { - "type": "boolean" + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] }, - "starred_at": { + "teams_url": { "type": "string", + "format": "uri", "examples": [ - "\"2020-07-09T00:17:55Z\"" + "http://api.github.com/repos/octocat/Hello-World/teams" ] }, - "user_view_type": { + "trees_url": { "type": "string", "examples": [ - "public" + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" ] - } - }, - "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" - ] - } - ] - }, - "body": { - "type": [ - "string", - "null" - ], - "examples": [ - "Please pull these awesome changes" - ] - }, - "labels": { - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "integer", - "format": "int64" - }, - "node_id": { - "type": "string" - }, - "url": { - "type": "string" - }, - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "color": { - "type": "string" - }, - "default": { - "type": "boolean" - } - }, - "required": [ - "id", - "node_id", - "url", - "name", - "description", - "color", - "default" - ] - } - }, - "milestone": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Milestone", - "description": "A collection of related issues and pull requests.", - "type": "object", - "properties": { - "url": { + }, + "clone_url": { "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones/1" + "git:git.example.com/octocat/Hello-World" ] }, - "html_url": { + "hooks_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World/milestones/v1.0" + "http://api.github.com/repos/octocat/Hello-World/hooks" ] }, - "labels_url": { + "svn_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" + "https://svn.github.com/octocat/Hello-World" ] }, - "id": { + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { "type": "integer", "examples": [ - 1002604 + 9 ] }, - "node_id": { + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", "type": "string", "examples": [ - "MDk6TWlsZXN0b25lMTAwMjYwNA==" + "master" ] }, - "number": { - "description": "The number of the milestone.", + "open_issues_count": { "type": "integer", "examples": [ - 42 + 0 ] }, - "state": { - "description": "The state of the milestone.", + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", "type": "string", "enum": [ - "open", - "closed" + "all", + "collaborators_only" ], - "default": "open", "examples": [ - "open" + "all" ] }, - "title": { - "description": "The title of the milestone.", - "type": "string", + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "v1.0" + "2011-01-26T19:06:43Z" ] }, - "description": { + "created_at": { "type": [ "string", "null" ], + "format": "date-time", "examples": [ - "Tracking milestone for version 1.0" + "2011-01-26T19:01:12Z" ] }, - "creator": { - "anyOf": [ - { - "type": "null" + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - ] - }, - "open_issues": { - "type": "integer", - "examples": [ - 4 - ] - }, - "closed_issues": { - "type": "integer", - "examples": [ - 8 - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-10T20:09:31Z" - ] - }, - "updated_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2014-03-03T18:58:10Z" - ] - }, - "closed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2013-02-12T13:22:01Z" - ] - }, - "due_on": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2012-10-09T23:39:01Z" + }, + "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" ] } - }, - "required": [ - "closed_issues", - "creator", - "description", - "due_on", - "closed_at", - "id", - "node_id", - "labels_url", - "html_url", - "number", - "open_issues", - "state", - "title", - "url", - "created_at", - "updated_at" ] } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" ] }, - "active_lock_reason": { - "type": [ - "string", - "null" - ], - "examples": [ - "too heated" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" + "_links": { + "type": "object", + "properties": { + "comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "commits": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "statuses": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "issue": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comment": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "comments", + "commits", + "statuses", + "html", + "issue", + "review_comments", + "review_comment", + "self" ] }, - "updated_at": { + "author_association": { + "title": "author_association", "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "closed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "merged_at": { - "type": [ - "string", - "null" + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" ], - "format": "date-time", "examples": [ - "2011-01-26T19:01:12Z" + "OWNER" ] }, - "merge_commit_sha": { + "auto_merge": { + "title": "Auto merge", + "description": "The status of auto merging a pull request.", "type": [ - "string", + "object", "null" ], - "examples": [ - "e5bd3914e2e596debea16f433f57875b5b90bcd6" - ] - }, - "assignee": { - "anyOf": [ - { - "type": "null" - }, - { + "properties": { + "enabled_by": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -654201,3034 +665963,2000 @@ "type", "url" ] + }, + "merge_method": { + "type": "string", + "description": "The merge method to use.", + "enum": [ + "merge", + "squash", + "rebase" + ] + }, + "commit_title": { + "type": "string", + "description": "Title for the merge commit message." + }, + "commit_message": { + "type": "string", + "description": "Commit message for the merge commit." } + }, + "required": [ + "enabled_by", + "merge_method", + "commit_title", + "commit_message" ] }, - "assignees": { - "type": "array", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "stack": { + "title": "Pull Request Stack", + "description": "The stack information associated with a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The base ref of the stack this pull request belongs to." + }, + "sha": { + "type": "string", + "description": "The base SHA of the stack this pull request belongs to." + } }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "required": [ + "ref", + "sha" + ] }, - "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" - ] - } + "size": { + "type": "integer", + "description": "The total number of pull requests in the stack." + }, + "position": { + "type": "integer", + "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + }, + "id": { + "type": "integer", + "description": "The ID of the stack that this pull request belongs to." + }, + "number": { + "type": "integer", + "description": "The number of the stack that this pull request belongs to." + } + }, + "required": [ + "base" + ] }, - "requested_reviewers": { - "type": "array", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "draft": { + "description": "Indicates whether or not the pull request is a draft.", + "type": "boolean", + "examples": [ + false + ] + } + }, + "required": [ + "_links", + "assignee", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merge_commit_sha", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347", + "id": 1, + "node_id": "MDExOlB1bGxSZXF1ZXN0MQ==", + "html_url": "https://github.com/octocat/Hello-World/pull/1347", + "diff_url": "https://github.com/octocat/Hello-World/pull/1347.diff", + "patch_url": "https://github.com/octocat/Hello-World/pull/1347.patch", + "issue_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits", + "review_comments_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments", + "review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e", + "number": 1347, + "state": "open", + "locked": true, + "title": "Amazing new feature", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Please pull these awesome changes in!", + "labels": [ + { + "id": 208045946, + "node_id": "MDU6TGFiZWwyMDgwNDU5NDY=", + "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", + "name": "bug", + "description": "Something isn't working", + "color": "f29513", + "default": true + } + ], + "milestone": { + "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", + "html_url": "https://github.com/octocat/Hello-World/milestones/v1.0", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels", + "id": 1002604, + "node_id": "MDk6TWlsZXN0b25lMTAwMjYwNA==", + "number": 1, + "state": "open", + "title": "v1.0", + "description": "Tracking milestone for version 1.0", + "creator": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "open_issues": 4, + "closed_issues": 8, + "created_at": "2011-04-10T20:09:31Z", + "updated_at": "2014-03-03T18:58:10Z", + "closed_at": "2013-02-12T13:22:01Z", + "due_on": "2012-10-09T23:39:01Z" + }, + "active_lock_reason": "too heated", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:01:12Z", + "closed_at": "2011-01-26T19:01:12Z", + "merged_at": "2011-01-26T19:01:12Z", + "merge_commit_sha": "e5bd3914e2e596debea16f433f57875b5b90bcd6", + "assignee": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "assignees": [ + { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + { + "login": "hubot", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/hubot_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/hubot", + "html_url": "https://github.com/hubot", + "followers_url": "https://api.github.com/users/hubot/followers", + "following_url": "https://api.github.com/users/hubot/following{/other_user}", + "gists_url": "https://api.github.com/users/hubot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/hubot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/hubot/subscriptions", + "organizations_url": "https://api.github.com/users/hubot/orgs", + "repos_url": "https://api.github.com/users/hubot/repos", + "events_url": "https://api.github.com/users/hubot/events{/privacy}", + "received_events_url": "https://api.github.com/users/hubot/received_events", + "type": "User", + "site_admin": true + } + ], + "requested_reviewers": [ + { + "login": "other_user", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/other_user_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/other_user", + "html_url": "https://github.com/other_user", + "followers_url": "https://api.github.com/users/other_user/followers", + "following_url": "https://api.github.com/users/other_user/following{/other_user}", + "gists_url": "https://api.github.com/users/other_user/gists{/gist_id}", + "starred_url": "https://api.github.com/users/other_user/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/other_user/subscriptions", + "organizations_url": "https://api.github.com/users/other_user/orgs", + "repos_url": "https://api.github.com/users/other_user/repos", + "events_url": "https://api.github.com/users/other_user/events{/privacy}", + "received_events_url": "https://api.github.com/users/other_user/received_events", + "type": "User", + "site_admin": false + } + ], + "requested_teams": [ + { + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "name": "Justice League", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "permission": "admin", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "parent": null + } + ], + "head": { + "label": "octocat:new-topic", + "ref": "new-topic", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "repo": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "allow_rebase_merge": true, + "template_repository": null, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://github.com/licenses/mit" }, - "type": { - "type": "string", - "examples": [ - "User" - ] + "forks": 1, + "open_issues": 1, + "watchers": 1 + } + }, + "base": { + "label": "octocat:master", + "ref": "master", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "repo": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false }, - "site_admin": { - "type": "boolean" + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "allow_rebase_merge": true, + "template_repository": null, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://github.com/licenses/mit" }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "forks": 1, + "open_issues": 1, + "watchers": 1 + } + }, + "_links": { + "self": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347" }, - "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" - ] - } + "html": { + "href": "https://github.com/octocat/Hello-World/pull/1347" + }, + "issue": { + "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347" + }, + "comments": { + "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" + }, + "review_comments": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" + }, + "review_comment": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" + }, + "commits": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + }, + "statuses": { + "href": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + } + }, + "author_association": "OWNER", + "auto_merge": null, + "draft": false + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" }, - "requested_teams": { + "documentation_url": { + "type": "string" + }, + "errors": { "type": "array", "items": { - "title": "Team", - "description": "Groups of organization members that gives permissions on specified repositories.", "type": "object", + "required": [ + "code" + ], "properties": { - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "slug": { - "type": "string" - }, - "description": { - "type": [ - "string", - "null" - ] - }, - "privacy": { + "resource": { "type": "string" }, - "notification_setting": { + "field": { "type": "string" }, - "permission": { + "message": { "type": "string" }, - "permissions": { - "type": "object", - "properties": { - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - }, - "admin": { - "type": "boolean" - } - }, - "required": [ - "pull", - "triage", - "push", - "maintain", - "admin" - ] - }, - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "members_url": { + "code": { "type": "string" }, - "repositories_url": { - "type": "string", - "format": "uri" - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "access_source": { - "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", - "type": "string", - "enum": [ - "direct", - "organization", - "enterprise" - ], - "examples": [ - "direct" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] + "index": { + "type": "integer" }, - "parent": { - "anyOf": [ + "value": { + "oneOf": [ { - "type": "null" + "type": [ + "string", + "null" + ] }, { - "title": "Team Simple", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the team", - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VGVhbTE=" - ] - }, - "url": { - "description": "URL for the team", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1" - ] - }, - "members_url": { - "type": "string", - "examples": [ - "https://api.github.com/organizations/1/team/1/members{/member}" - ] - }, - "name": { - "description": "Name of the team", - "type": "string", - "examples": [ - "Justice League" - ] - }, - "description": { - "description": "Description of the team", - "type": [ - "string", - "null" - ], - "examples": [ - "A great team." - ] - }, - "permission": { - "description": "Permission that the team will have for its repositories", - "type": "string", - "examples": [ - "admin" - ] - }, - "privacy": { - "description": "The level of privacy this team should have", - "type": "string", - "examples": [ - "closed" - ] - }, - "notification_setting": { - "description": "The notification setting the team has set", - "type": "string", - "examples": [ - "notifications_enabled" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "repositories_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1/repos" - ] - }, - "slug": { - "type": "string", - "examples": [ - "justice-league" - ] - }, - "ldap_dn": { - "description": "Distinguished Name (DN) that team maps to within LDAP environment", - "type": "string", - "examples": [ - "uid=example,ou=users,dc=github,dc=com" - ] - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "type" + "type": [ + "integer", + "null" ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } } ] } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "parent", - "type" - ] + } } - }, - "head": { - "type": "object", - "properties": { - "label": { - "type": "string" - }, - "ref": { - "type": "string" - }, - "repo": { - "title": "Repository", - "description": "A repository on GitHub.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "description": "The name of the repository.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "forks": { - "type": "integer" - }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } - }, - "required": [ - "admin", - "pull", - "push" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "review-requests" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/reviews": { + "get": { + "summary": "List reviews for a pull request", + "description": "Lists all reviews for a specified pull request. The list of reviews returns in chronological order.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/list-reviews", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#list-reviews-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "The list of reviews returns in chronological order.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] }, - "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" - ] - }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" - ] - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "clone_url": { - "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" - ] - }, - "hooks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" - ] - }, - "svn_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "description": "The default branch of the repository.", - "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - "topics": { - "type": "array", - "items": { + "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" + ] + } + ] + }, + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "object", + "properties": { + "href": { "type": "string" } }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_downloads": { - "description": "Whether downloads are enabled.", - "default": true, - "type": "boolean", - "deprecated": true, - "examples": [ - true - ] - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", - "type": "string", - "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "use_squash_pr_title_as_default": { - "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", - "default": false, - "deprecated": true - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "master_branch": { - "type": "string" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:42Z\"" - ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { - "type": "string" - } + "required": [ + "href" + ] + }, + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string" } - } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "html", + "pull_request" + ] + }, + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], + "examples": [ + "54bb654c9e6025347f57900a4a5c2313a96b8035" + ] + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + } + }, + "required": [ + "id", + "node_id", + "user", + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" + ] + } + }, + "examples": { + "default": { + "value": [ + { + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Here is the body for the review.", + "state": "APPROVED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "_links": { + "html": { + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + } + }, + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" + } + ] + } + } + } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "reviews" + } + }, + "post": { + "summary": "Create a review for a pull request", + "description": "Creates a review on a specified pull request.\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"\n\nPull request reviews created in the `PENDING` state are not submitted and therefore do not include the `submitted_at` property in the response. To create a pending review for a pull request, leave the `event` parameter blank. For more information about submitting a `PENDING` review, see \"[Submit a review for a pull request](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request).\"\n\n> [!NOTE]\n> To comment on a specific line in a file, you need to first determine the position of that line in the diff. To see a pull request diff, add the `application/vnd.github.v3.diff` media type to the `Accept` header of a call to the [Get a pull request](https://docs.github.com/rest/pulls/pulls#get-a-pull-request) endpoint.\n\nThe `position` value equals the number of lines down from the first \"@@\" hunk header in the file you want to add a comment. The line just below the \"@@\" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/create-review", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#create-a-review-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": false, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "commit_id": { + "type": "string", + "description": "The SHA of the commit that needs a review. Not using the latest commit SHA may render your review comment outdated if a subsequent commit modifies the line you specify as the `position`. Defaults to the most recent commit in the pull request when you do not specify a value." + }, + "body": { + "type": "string", + "description": "**Required** when using `REQUEST_CHANGES` or `COMMENT` for the `event` parameter. The body text of the pull request review." + }, + "event": { + "type": "string", + "description": "The review action you want to perform. The review actions include: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. By leaving this blank, you set the review action state to `PENDING`, which means you will need to [submit the pull request review](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request) when you are ready.", + "enum": [ + "APPROVE", + "REQUEST_CHANGES", + "COMMENT" + ] + }, + "comments": { + "type": "array", + "description": "Use the following table to specify the location, destination, and contents of the draft review comment.", + "items": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The relative path to the file that necessitates a review comment." + }, + "position": { + "type": "integer", + "description": "The position in the diff where you want to add a review comment. Note this value is not the same as the line number in the file. The `position` value equals the number of lines down from the first \"@@\" hunk header in the file you want to add a comment. The line just below the \"@@\" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file." + }, + "body": { + "type": "string", + "description": "Text of the review comment." + }, + "line": { + "type": "integer", + "examples": [ + 28 ] }, - "sha": { - "type": "string" + "side": { + "type": "string", + "examples": [ + "RIGHT" + ] }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "start_line": { + "type": "integer", + "examples": [ + 26 + ] + }, + "start_side": { + "type": "string", + "examples": [ + "LEFT" ] } }, "required": [ - "label", - "ref", - "repo", - "sha", - "user" + "path", + "body" + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "body": "This is close to perfect! Please address the suggested inline change.", + "event": "REQUEST_CHANGES", + "comments": [ + { + "path": "file.md", + "position": 6, + "body": "Please add more information here, and fix this typo." + } + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 ] }, - "base": { - "type": "object", - "properties": { - "label": { - "type": "string" - }, - "ref": { - "type": "string" + "node_id": { + "type": "string", + "examples": [ + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" }, - "repo": { - "title": "Repository", - "description": "A repository on GitHub.", + { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 + "name": { + "type": [ + "string", + "null" ] }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + "email": { + "type": [ + "string", + "null" ] }, - "name": { - "description": "The name of the repository.", + "login": { "type": "string", "examples": [ - "Team Environment" + "octocat" ] }, - "full_name": { - "type": "string", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "forks": { - "type": "integer" - }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } - }, - "required": [ - "admin", - "pull", - "push" + 1 ] }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" ] }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, - "type": "boolean" - }, - "html_url": { + "avatar_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World" + "https://github.com/images/error/octocat_happy.gif" ] }, - "description": { + "gravatar_id": { "type": [ "string", "null" ], "examples": [ - "This your first repo!" + "41d064eb2195891e12d0413f63227ea7" ] }, - "fork": { - "type": "boolean" - }, "url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + "https://api.github.com/users/octocat" ] }, - "collaborators_url": { + "html_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + "https://github.com/octocat" ] }, - "comments_url": { + "followers_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + "https://api.github.com/users/octocat/followers" ] }, - "commits_url": { + "following_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "compare_url": { + "gists_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "contents_url": { + "starred_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "contributors_url": { + "subscriptions_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" + "https://api.github.com/users/octocat/subscriptions" ] }, - "deployments_url": { + "organizations_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" + "https://api.github.com/users/octocat/orgs" ] }, - "downloads_url": { + "repos_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" + "https://api.github.com/users/octocat/repos" ] }, "events_url": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "forks_url": { + "received_events_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" + "https://api.github.com/users/octocat/received_events" ] }, - "git_commits_url": { + "type": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + "User" ] }, - "git_refs_url": { + "site_admin": { + "type": "boolean" + }, + "starred_at": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + "\"2020-07-09T00:17:55Z\"" ] }, - "git_tags_url": { + "user_view_type": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "html", + "pull_request" + ] + }, + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], + "examples": [ + "54bb654c9e6025347f57900a4a5c2313a96b8035" + ] + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + } + }, + "required": [ + "id", + "node_id", + "user", + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" + ] + }, + "examples": { + "default": { + "value": { + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "This is close to perfect! Please address the suggested inline change.", + "state": "CHANGES_REQUESTED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "_links": { + "html": { + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + }, + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + } + }, + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error Simple", + "description": "Validation Error Simple", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "triggersNotification": true, + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "reviews" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}": { + "get": { + "summary": "Get a review for a pull request", + "description": "Retrieves a pull request review by its ID.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/get-review", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#get-a-review-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" ] }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" + "email": { + "type": [ + "string", + "null" ] }, - "issue_comment_url": { + "login": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + "octocat" ] }, - "issue_events_url": { - "type": "string", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + 1 ] }, - "issues_url": { + "node_id": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + "MDQ6VXNlcjE=" ] }, - "keys_url": { + "avatar_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + "https://github.com/images/error/octocat_happy.gif" ] }, - "labels_url": { - "type": "string", + "gravatar_id": { + "type": [ + "string", + "null" + ], "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + "41d064eb2195891e12d0413f63227ea7" ] }, - "languages_url": { + "url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" + "https://api.github.com/users/octocat" ] }, - "merges_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" + "https://github.com/octocat" ] }, - "stargazers_url": { + "followers_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" + "https://api.github.com/users/octocat/followers" ] }, - "statuses_url": { + "following_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "subscribers_url": { + "gists_url": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "subscription_url": { + "starred_url": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "tags_url": { + "subscriptions_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" + "https://api.github.com/users/octocat/subscriptions" ] }, - "teams_url": { + "organizations_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + "https://api.github.com/users/octocat/orgs" ] }, - "clone_url": { + "repos_url": { "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], "format": "uri", "examples": [ - "git:git.example.com/octocat/Hello-World" + "https://api.github.com/users/octocat/repos" ] }, - "hooks_url": { + "events_url": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "svn_url": { + "received_events_url": { "type": "string", "format": "uri", "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "description": "The default branch of the repository.", - "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "topics": { - "type": "array", - "items": { - "type": "string" - } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_downloads": { - "description": "Whether downloads are enabled.", - "default": true, - "type": "boolean", - "deprecated": true, - "examples": [ - true - ] - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true + "https://api.github.com/users/octocat/received_events" ] }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": { "type": "string", - "enum": [ - "all", - "collaborators_only" - ], "examples": [ - "all" + "User" ] }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, + "site_admin": { "type": "boolean" }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "use_squash_pr_title_as_default": { - "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", - "default": false, - "deprecated": true - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { + "starred_at": { "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", "examples": [ - true + "\"2020-07-09T00:17:55Z\"" ] }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "master_branch": { - "type": "string" - }, - "starred_at": { + "user_view_type": { "type": "string", "examples": [ - "\"2020-07-09T00:17:42Z\"" + "public" ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { - "type": "string" - } - } } }, "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", + "avatar_url", "events_url", - "fork", - "forks_url", - "full_name", - "git_commits_url", - "git_refs_url", - "git_tags_url", - "hooks_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] - }, - "sha": { - "type": "string" - }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" ] } - }, - "required": [ - "label", - "ref", - "repo", - "sha", - "user" + ] + }, + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" ] }, "_links": { "type": "object", "properties": { - "comments": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "commits": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "statuses": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, "html": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "issue": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "review_comments": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "review_comment": { - "title": "Link", - "description": "Hypermedia Link", "type": "object", "properties": { "href": { @@ -657239,9 +667967,7 @@ "href" ] }, - "self": { - "title": "Link", - "description": "Hypermedia Link", + "pull_request": { "type": "object", "properties": { "href": { @@ -657254,43 +667980,247 @@ } }, "required": [ - "comments", - "commits", - "statuses", "html", - "issue", - "review_comments", - "review_comment", - "self" + "pull_request" + ] + }, + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], + "examples": [ + "54bb654c9e6025347f57900a4a5c2313a96b8035" + ] + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + } + }, + "required": [ + "id", + "node_id", + "user", + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" + ] + }, + "examples": { + "default": { + "value": { + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Here is the body for the review.", + "state": "APPROVED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "_links": { + "html": { + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + }, + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + } + }, + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "reviews" + } + }, + "put": { + "summary": "Update a review for a pull request", + "description": "Updates the contents of a specified review summary comment.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/update-review", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#update-a-review-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "body": { + "type": "string", + "description": "The body text of the pull request review." + } + }, + "required": [ + "body" + ] + }, + "examples": { + "default": { + "value": { + "body": "This is close to perfect! Please address the suggested inline change. And add more about this." + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 ] }, - "author_association": { - "title": "author_association", + "node_id": { "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], "examples": [ - "OWNER" + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" ] }, - "auto_merge": { - "title": "Auto merge", - "description": "The status of auto merging a pull request.", - "type": [ - "object", - "null" - ], - "properties": { - "enabled_by": { + "user": { + "anyOf": [ + { + "type": "null" + }, + { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -657457,139 +668387,124 @@ "type", "url" ] - }, - "merge_method": { - "type": "string", - "description": "The merge method to use.", - "enum": [ - "merge", - "squash", - "rebase" - ] - }, - "commit_title": { - "type": "string", - "description": "Title for the merge commit message." - }, - "commit_message": { - "type": "string", - "description": "Commit message for the merge commit." } - }, - "required": [ - "enabled_by", - "merge_method", - "commit_title", - "commit_message" ] }, - "stack": { - "title": "Pull Request Stack", - "description": "The stack information associated with a pull request.", - "type": [ - "object", - "null" - ], + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" + ] + }, + "_links": { + "type": "object", "properties": { - "base": { + "html": { "type": "object", "properties": { - "ref": { - "type": "string", - "description": "The base ref of the stack this pull request belongs to." - }, - "sha": { - "type": "string", - "description": "The base SHA of the stack this pull request belongs to." + "href": { + "type": "string" } }, "required": [ - "ref", - "sha" + "href" ] }, - "size": { - "type": "integer", - "description": "The total number of pull requests in the stack." - }, - "position": { - "type": "integer", - "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." - }, - "id": { - "type": "integer", - "description": "The ID of the stack that this pull request belongs to." - }, - "number": { - "type": "integer", - "description": "The number of the stack that this pull request belongs to." + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] } }, "required": [ - "base" + "html", + "pull_request" ] }, - "draft": { - "description": "Indicates whether or not the pull request is a draft.", - "type": "boolean", + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], "examples": [ - false + "54bb654c9e6025347f57900a4a5c2313a96b8035" + ] + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" ] } }, "required": [ - "_links", - "assignee", - "labels", - "base", - "body", - "closed_at", - "comments_url", - "commits_url", - "created_at", - "diff_url", - "head", - "html_url", "id", "node_id", - "issue_url", - "merge_commit_sha", - "merged_at", - "milestone", - "number", - "patch_url", - "review_comment_url", - "review_comments_url", - "statuses_url", - "state", - "locked", - "title", - "updated_at", - "url", "user", - "author_association", - "auto_merge" + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" ] }, "examples": { "default": { "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347", - "id": 1, - "node_id": "MDExOlB1bGxSZXF1ZXN0MQ==", - "html_url": "https://github.com/octocat/Hello-World/pull/1347", - "diff_url": "https://github.com/octocat/Hello-World/pull/1347.diff", - "patch_url": "https://github.com/octocat/Hello-World/pull/1347.patch", - "issue_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits", - "review_comments_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments", - "review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e", - "number": 1347, - "state": "open", - "locked": true, - "title": "Amazing new feature", + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", "user": { "login": "octocat", "id": 1, @@ -657610,487 +668525,463 @@ "type": "User", "site_admin": false }, - "body": "Please pull these awesome changes in!", - "labels": [ - { - "id": 208045946, - "node_id": "MDU6TGFiZWwyMDgwNDU5NDY=", - "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", - "name": "bug", - "description": "Something isn't working", - "color": "f29513", - "default": true - } - ], - "milestone": { - "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", - "html_url": "https://github.com/octocat/Hello-World/milestones/v1.0", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels", - "id": 1002604, - "node_id": "MDk6TWlsZXN0b25lMTAwMjYwNA==", - "number": 1, - "state": "open", - "title": "v1.0", - "description": "Tracking milestone for version 1.0", - "creator": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "body": "This is close to perfect! Please address the suggested inline change. And add more about this.", + "state": "CHANGES_REQUESTED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "_links": { + "html": { + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" }, - "open_issues": 4, - "closed_issues": 8, - "created_at": "2011-04-10T20:09:31Z", - "updated_at": "2014-03-03T18:58:10Z", - "closed_at": "2013-02-12T13:22:01Z", - "due_on": "2012-10-09T23:39:01Z" - }, - "active_lock_reason": "too heated", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:01:12Z", - "closed_at": "2011-01-26T19:01:12Z", - "merged_at": "2011-01-26T19:01:12Z", - "merge_commit_sha": "e5bd3914e2e596debea16f433f57875b5b90bcd6", - "assignee": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + } }, - "assignees": [ + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error Simple", + "description": "Validation Error Simple", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "reviews" + } + }, + "delete": { + "summary": "Delete a pending review for a pull request", + "description": "Deletes a pull request review that has not been submitted. Submitted reviews cannot be deleted.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/delete-pending-review", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#delete-a-pending-review-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + ] + }, + "user": { + "anyOf": [ { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "type": "null" }, { - "login": "hubot", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/hubot_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/hubot", - "html_url": "https://github.com/hubot", - "followers_url": "https://api.github.com/users/hubot/followers", - "following_url": "https://api.github.com/users/hubot/following{/other_user}", - "gists_url": "https://api.github.com/users/hubot/gists{/gist_id}", - "starred_url": "https://api.github.com/users/hubot/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/hubot/subscriptions", - "organizations_url": "https://api.github.com/users/hubot/orgs", - "repos_url": "https://api.github.com/users/hubot/repos", - "events_url": "https://api.github.com/users/hubot/events{/privacy}", - "received_events_url": "https://api.github.com/users/hubot/received_events", - "type": "User", - "site_admin": true - } - ], - "requested_reviewers": [ - { - "login": "other_user", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/other_user_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/other_user", - "html_url": "https://github.com/other_user", - "followers_url": "https://api.github.com/users/other_user/followers", - "following_url": "https://api.github.com/users/other_user/following{/other_user}", - "gists_url": "https://api.github.com/users/other_user/gists{/gist_id}", - "starred_url": "https://api.github.com/users/other_user/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/other_user/subscriptions", - "organizations_url": "https://api.github.com/users/other_user/orgs", - "repos_url": "https://api.github.com/users/other_user/repos", - "events_url": "https://api.github.com/users/other_user/events{/privacy}", - "received_events_url": "https://api.github.com/users/other_user/received_events", - "type": "User", - "site_admin": false - } - ], - "requested_teams": [ - { - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "name": "Justice League", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "permission": "admin", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "parent": null - } - ], - "head": { - "label": "octocat:new-topic", - "ref": "new-topic", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "repo": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "template_repository": null, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://github.com/licenses/mit" + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - "forks": 1, - "open_issues": 1, - "watchers": 1 + "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" + ] } - }, - "base": { - "label": "octocat:master", - "ref": "master", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "repo": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true + ] + }, + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "object", + "properties": { + "href": { + "type": "string" + } }, - "allow_rebase_merge": true, - "template_repository": null, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://github.com/licenses/mit" + "required": [ + "href" + ] + }, + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string" + } }, - "forks": 1, - "open_issues": 1, - "watchers": 1 + "required": [ + "href" + ] } }, + "required": [ + "html", + "pull_request" + ] + }, + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], + "examples": [ + "54bb654c9e6025347f57900a4a5c2313a96b8035" + ] + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + } + }, + "required": [ + "id", + "node_id", + "user", + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" + ] + }, + "examples": { + "default": { + "value": { + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "This is close to perfect! Please address the suggested inline change.", + "state": "CHANGES_REQUESTED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", "_links": { - "self": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347" - }, "html": { - "href": "https://github.com/octocat/Hello-World/pull/1347" - }, - "issue": { - "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347" - }, - "comments": { - "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" - }, - "review_comments": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" - }, - "review_comment": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" - }, - "commits": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" }, - "statuses": { - "href": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" } }, - "author_association": "OWNER", - "auto_merge": null, - "draft": false + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" } } } @@ -658102,8 +668993,8 @@ "content": { "application/json": { "schema": { - "title": "Validation Error", - "description": "Validation Error", + "title": "Validation Error Simple", + "description": "Validation Error Simple", "type": "object", "required": [ "message", @@ -658119,79 +669010,60 @@ "errors": { "type": "array", "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } + "type": "string" } } } } } } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, "category": "pulls", - "subcategory": "review-requests" + "subcategory": "reviews" } } }, - "/repos/{owner}/{repo}/pulls/{pull_number}/reviews": { + "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments": { "get": { - "summary": "List reviews for a pull request", - "description": "Lists all reviews for a specified pull request. The list of reviews returns in chronological order.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "summary": "List comments for a pull request review", + "description": "Lists comments for a specific pull request review.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", "tags": [ "pulls" ], - "operationId": "pulls/list-reviews", + "operationId": "pulls/list-comments-for-review", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#list-reviews-for-a-pull-request" + "url": "https://docs.github.com/rest/pulls/reviews#list-comments-for-a-pull-request-review" }, "parameters": [ { @@ -658221,6 +669093,15 @@ "type": "integer" } }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, { "name": "per_page", "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", @@ -658242,28 +669123,89 @@ ], "responses": { "200": { - "description": "The list of reviews returns in chronological order.", + "description": "Response", "content": { "application/json": { "schema": { "type": "array", "items": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", + "title": "Legacy Review Comment", + "description": "Legacy Review Comment", "type": "object", "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + ] + }, + "pull_request_review_id": { + "type": [ + "integer", + "null" + ], + "format": "int64", + "examples": [ + 42 + ] + }, "id": { - "description": "Unique identifier of the review", "type": "integer", "format": "int64", "examples": [ - 42 + 10 ] }, "node_id": { "type": "string", "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw" + ] + }, + "diff_hunk": { + "type": "string", + "examples": [ + "@@ -16,33 +16,40 @@ public class Connection : IConnection..." + ] + }, + "path": { + "type": "string", + "examples": [ + "file1.txt" + ] + }, + "position": { + "type": [ + "integer", + "null" + ], + "examples": [ + 1 + ] + }, + "original_position": { + "type": "integer", + "examples": [ + 4 + ] + }, + "commit_id": { + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "original_commit_id": { + "type": "string", + "examples": [ + "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840" + ] + }, + "in_reply_to_id": { + "type": "integer", + "examples": [ + 8 ] }, "user": { @@ -658442,36 +669384,76 @@ ] }, "body": { - "description": "The text of the review.", "type": "string", "examples": [ - "This looks great." + "Great stuff" ] }, - "state": { + "created_at": { "type": "string", + "format": "date-time", "examples": [ - "CHANGES_REQUESTED" + "2011-04-14T16:00:49Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-14T16:00:49Z" ] }, "html_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" ] }, "pull_request_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" + "https://api.github.com/repos/octocat/Hello-World/pulls/1" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" ] }, "_links": { "type": "object", "properties": { + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, "html": { + "title": "Link", + "description": "Hypermedia Link", "type": "object", "properties": { "href": { @@ -658483,6 +669465,8 @@ ] }, "pull_request": { + "title": "Link", + "description": "Hypermedia Link", "type": "object", "properties": { "href": { @@ -658495,115 +669479,748 @@ } }, "required": [ + "self", "html", "pull_request" ] }, - "submitted_at": { - "type": "string", - "format": "date-time" + "body_text": { + "type": "string" }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "body_html": { + "type": "string" + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" + } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" + ] + }, + "side": { + "description": "The side of the first line of the range for a multi-line comment.", + "enum": [ + "LEFT", + "RIGHT" + ], + "default": "RIGHT", + "type": "string" + }, + "start_side": { "type": [ "string", "null" ], + "description": "The side of the first line of the range for a multi-line comment.", + "enum": [ + "LEFT", + "RIGHT", + null + ], + "default": "RIGHT" + }, + "line": { + "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "type": "integer", "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" + 2 ] }, - "body_html": { - "type": "string" + "original_line": { + "description": "The original line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "type": "integer", + "examples": [ + 2 + ] }, - "body_text": { - "type": "string" + "start_line": { + "description": "The first line of the range for a multi-line comment.", + "type": [ + "integer", + "null" + ], + "examples": [ + 2 + ] }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" + "original_start_line": { + "description": "The original first line of the range for a multi-line comment.", + "type": [ + "integer", + "null" ], "examples": [ - "OWNER" + 2 + ] + }, + "subject_type": { + "description": "The level at which the comment is targeted, can be a diff line or a file.", + "type": "string", + "enum": [ + "line", + "file" ] } }, "required": [ "id", "node_id", - "user", + "url", "body", - "state", + "diff_hunk", + "path", + "position", + "original_position", "commit_id", + "original_commit_id", + "user", + "pull_request_review_id", "html_url", "pull_request_url", "_links", - "author_association" + "author_association", + "created_at", + "updated_at" + ] + } + }, + "examples": { + "default": { + "value": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", + "pull_request_review_id": 42, + "id": 10, + "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw", + "diff_hunk": "@@ -16,33 +16,40 @@ public class Connection : IConnection...", + "path": "file1.txt", + "position": 1, + "original_position": 4, + "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "original_commit_id": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840", + "in_reply_to_id": 8, + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Great stuff!", + "created_at": "2011-04-14T16:00:49Z", + "updated_at": "2011-04-14T16:00:49Z", + "html_url": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", + "author_association": "NONE", + "_links": { + "self": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + }, + "html": { + "href": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" + }, + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1" + } + } + } + ] + } + } + } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "reviews" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals": { + "put": { + "summary": "Dismiss a review for a pull request", + "description": "Dismisses a specified review on a pull request.\n\n> [!NOTE]\n> To dismiss a pull request review on a [protected branch](https://docs.github.com/rest/branches/branch-protection), you must be a repository administrator or be included in the list of people or teams who can dismiss pull request reviews.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/dismiss-review", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#dismiss-a-review-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "The message for the pull request review dismissal" + }, + "event": { + "type": "string", + "enum": [ + "DISMISS" + ], + "examples": [ + "\"DISMISS\"" ] } }, + "required": [ + "message" + ] + }, + "examples": { + "default": { + "value": { + "message": "You are dismissed", + "event": "DISMISS" + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "html", + "pull_request" + ] + }, + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], + "examples": [ + "54bb654c9e6025347f57900a4a5c2313a96b8035" + ] + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + } + }, + "required": [ + "id", + "node_id", + "user", + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" + ] + }, "examples": { "default": { - "value": [ - { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "Here is the body for the review.", - "state": "APPROVED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", - "_links": { - "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" - } + "value": { + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Here is the body for the review.", + "state": "DISMISSED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "_links": { + "html": { + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" - } - ] + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + } + }, + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" + } } } } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { "schema": { - "type": "string" + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error Simple", + "description": "Validation Error Simple", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + } + } } } } @@ -658615,17 +670232,19 @@ "category": "pulls", "subcategory": "reviews" } - }, + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events": { "post": { - "summary": "Create a review for a pull request", - "description": "Creates a review on a specified pull request.\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"\n\nPull request reviews created in the `PENDING` state are not submitted and therefore do not include the `submitted_at` property in the response. To create a pending review for a pull request, leave the `event` parameter blank. For more information about submitting a `PENDING` review, see \"[Submit a review for a pull request](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request).\"\n\n> [!NOTE]\n> To comment on a specific line in a file, you need to first determine the position of that line in the diff. To see a pull request diff, add the `application/vnd.github.v3.diff` media type to the `Accept` header of a call to the [Get a pull request](https://docs.github.com/rest/pulls/pulls#get-a-pull-request) endpoint.\n\nThe `position` value equals the number of lines down from the first \"@@\" hunk header in the file you want to add a comment. The line just below the \"@@\" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "summary": "Submit a review for a pull request", + "description": "Submits a pending review for a pull request. For more information about creating a pending review for a pull request, see \"[Create a review for a pull request](https://docs.github.com/rest/pulls/reviews#create-a-review-for-a-pull-request).\"\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", "tags": [ "pulls" ], - "operationId": "pulls/create-review", + "operationId": "pulls/submit-review", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#create-a-review-for-a-pull-request" + "url": "https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request" }, "parameters": [ { @@ -658654,96 +670273,47 @@ "schema": { "type": "integer" } + }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } } ], "requestBody": { - "required": false, + "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { - "commit_id": { - "type": "string", - "description": "The SHA of the commit that needs a review. Not using the latest commit SHA may render your review comment outdated if a subsequent commit modifies the line you specify as the `position`. Defaults to the most recent commit in the pull request when you do not specify a value." - }, "body": { "type": "string", - "description": "**Required** when using `REQUEST_CHANGES` or `COMMENT` for the `event` parameter. The body text of the pull request review." + "description": "The body text of the pull request review" }, "event": { "type": "string", - "description": "The review action you want to perform. The review actions include: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. By leaving this blank, you set the review action state to `PENDING`, which means you will need to [submit the pull request review](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request) when you are ready.", + "description": "The review action you want to perform. The review actions include: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. When you leave this blank, the API returns _HTTP 422 (Unrecognizable entity)_ and sets the review action state to `PENDING`, which means you will need to re-submit the pull request review using a review action.", "enum": [ "APPROVE", "REQUEST_CHANGES", "COMMENT" ] - }, - "comments": { - "type": "array", - "description": "Use the following table to specify the location, destination, and contents of the draft review comment.", - "items": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The relative path to the file that necessitates a review comment." - }, - "position": { - "type": "integer", - "description": "The position in the diff where you want to add a review comment. Note this value is not the same as the line number in the file. The `position` value equals the number of lines down from the first \"@@\" hunk header in the file you want to add a comment. The line just below the \"@@\" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file." - }, - "body": { - "type": "string", - "description": "Text of the review comment." - }, - "line": { - "type": "integer", - "examples": [ - 28 - ] - }, - "side": { - "type": "string", - "examples": [ - "RIGHT" - ] - }, - "start_line": { - "type": "integer", - "examples": [ - 26 - ] - }, - "start_side": { - "type": "string", - "examples": [ - "LEFT" - ] - } - }, - "required": [ - "path", - "body" - ] - } } - } + }, + "required": [ + "event" + ] }, "examples": { "default": { "value": { - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "body": "This is close to perfect! Please address the suggested inline change.", - "event": "REQUEST_CHANGES", - "comments": [ - { - "path": "file.md", - "position": 6, - "body": "Please add more information here, and fix this typo." - } - ] + "body": "Here is the body for the review.", + "event": "REQUEST_CHANGES" } } } @@ -659084,8 +670654,8 @@ "type": "User", "site_admin": false }, - "body": "This is close to perfect! Please address the suggested inline change.", - "state": "CHANGES_REQUESTED", + "body": "Here is the body for the review.", + "state": "APPROVED", "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", "_links": { @@ -659105,6 +670675,32 @@ } } }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, "422": { "description": "Validation failed, or the endpoint has been spammed.", "content": { @@ -659150,11 +670746,810 @@ "documentation_url": { "type": "string" }, - "url": { - "type": "string" - }, - "status": { - "type": "string" + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "reviews" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/update-branch": { + "put": { + "summary": "Update a pull request branch", + "description": "Updates the pull request branch with the latest upstream changes by merging HEAD from the base branch into the pull request branch.\nNote: If making a request on behalf of a GitHub App you must also have permissions to write the contents of the head repository.", + "tags": [ + "pulls" + ], + "operationId": "pulls/update-branch", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/pulls#update-a-pull-request-branch" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": false, + "content": { + "application/json": { + "schema": { + "type": [ + "object", + "null" + ], + "properties": { + "expected_head_sha": { + "type": "string", + "description": "The expected SHA of the pull request's HEAD ref. This is the most recent commit on the pull request's branch. If the expected SHA does not match the pull request's HEAD, you will receive a `422 Unprocessable Entity` status. You can use the \"[List commits](https://docs.github.com/rest/commits/commits#list-commits)\" endpoint to find the most recent commit SHA. Default: SHA of the pull request's current HEAD ref." + } + } + }, + "examples": { + "default": { + "value": { + "expected_head_sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e" + } + } + } + } + } + }, + "responses": { + "202": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "url": { + "type": "string" + } + } + }, + "examples": { + "default": { + "value": { + "message": "Updating pull request branch.", + "url": "https://github.com/repos/octocat/Hello-World/pulls/53" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": false, + "category": "pulls", + "subcategory": "pulls" + } + } + }, + "/repos/{owner}/{repo}/readme": { + "get": { + "summary": "Get a repository README", + "description": "Gets the preferred README for a repository.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw file contents. This is the default if you do not specify a media type.\n- **`application/vnd.github.html+json`**: Returns the README in HTML. Markup languages are rendered to HTML using GitHub's open-source [Markup library](https://github.com/github/markup).", + "tags": [ + "repos" + ], + "operationId": "repos/get-readme", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/contents#get-a-repository-readme" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ref", + "description": "The name of the commit/branch/tag. Default: the repository’s default branch.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Content File", + "description": "Content File", + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "file" + ] + }, + "encoding": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "content": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "git_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "html_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "download_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "_links": { + "type": "object", + "properties": { + "git": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "html": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "self": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "git", + "html", + "self" + ] + }, + "target": { + "type": "string", + "examples": [ + "\"actual/actual.md\"" + ] + }, + "submodule_git_url": { + "type": "string", + "examples": [ + "\"git://example.com/defunkt/dotjs.git\"" + ] + } + }, + "required": [ + "_links", + "git_url", + "html_url", + "download_url", + "name", + "path", + "sha", + "size", + "type", + "url", + "content", + "encoding" + ] + }, + "examples": { + "default": { + "value": { + "type": "file", + "encoding": "base64", + "size": 5362, + "name": "README.md", + "path": "README.md", + "content": "encoded content ...", + "sha": "3d21ec53a331a6f037a91c368710b99387d012c1", + "url": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", + "git_url": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", + "html_url": "https://github.com/octokit/octokit.rb/blob/master/README.md", + "download_url": "https://raw.githubusercontent.com/octokit/octokit.rb/master/README.md", + "_links": { + "git": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", + "self": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", + "html": "https://github.com/octokit/octokit.rb/blob/master/README.md" + } + } + } + } + } + } + }, + "304": { + "description": "Not modified" + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "contents" + } + } + }, + "/repos/{owner}/{repo}/readme/{dir}": { + "get": { + "summary": "Get a repository README for a directory", + "description": "Gets the README from a repository directory.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw file contents. This is the default if you do not specify a media type.\n- **`application/vnd.github.html+json`**: Returns the README in HTML. Markup languages are rendered to HTML using GitHub's open-source [Markup library](https://github.com/github/markup).", + "tags": [ + "repos" + ], + "operationId": "repos/get-readme-in-directory", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/contents#get-a-repository-readme-for-a-directory" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "dir", + "description": "The alternate path to look for a README file", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "x-multi-segment": true + }, + { + "name": "ref", + "description": "The name of the commit/branch/tag. Default: the repository’s default branch.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Content File", + "description": "Content File", + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "file" + ] + }, + "encoding": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "content": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "git_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "html_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "download_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "_links": { + "type": "object", + "properties": { + "git": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "html": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "self": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "git", + "html", + "self" + ] + }, + "target": { + "type": "string", + "examples": [ + "\"actual/actual.md\"" + ] + }, + "submodule_git_url": { + "type": "string", + "examples": [ + "\"git://example.com/defunkt/dotjs.git\"" + ] + } + }, + "required": [ + "_links", + "git_url", + "html_url", + "download_url", + "name", + "path", + "sha", + "size", + "type", + "url", + "content", + "encoding" + ] + }, + "examples": { + "default": { + "value": { + "type": "file", + "encoding": "base64", + "size": 5362, + "name": "README.md", + "path": "README.md", + "content": "encoded content ...", + "sha": "3d21ec53a331a6f037a91c368710b99387d012c1", + "url": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", + "git_url": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", + "html_url": "https://github.com/octokit/octokit.rb/blob/master/README.md", + "download_url": "https://raw.githubusercontent.com/octokit/octokit.rb/master/README.md", + "_links": { + "git": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", + "self": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", + "html": "https://github.com/octokit/octokit.rb/blob/master/README.md" + } + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } } } } @@ -659163,25 +671558,24 @@ } }, "x-github": { - "triggersNotification": true, "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" + "category": "repos", + "subcategory": "contents" } } }, - "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}": { + "/repos/{owner}/{repo}/releases": { "get": { - "summary": "Get a review for a pull request", - "description": "Retrieves a pull request review by its ID.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "summary": "List releases", + "description": "This returns a list of releases, which does not include regular Git tags that have not been associated with a release. To get a list of Git tags, use the [Repository Tags API](https://docs.github.com/rest/repos/repos#list-repository-tags).\n\nInformation about published releases are available to everyone. Only users with push access will receive listings for draft releases.", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/get-review", + "operationId": "repos/list-releases", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#get-a-review-for-a-pull-request" + "url": "https://docs.github.com/rest/releases/releases#list-releases" }, "parameters": [ { @@ -659203,21 +671597,21 @@ } }, { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", "schema": { - "type": "integer" + "type": "integer", + "default": 30 } }, { - "name": "review_id", - "description": "The unique identifier of the review.", - "in": "path", - "required": true, + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", "schema": { - "type": "integer" + "type": "integer", + "default": 1 } } ], @@ -659227,353 +671621,715 @@ "content": { "application/json": { "schema": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the review", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" - ] - }, - "user": { - "anyOf": [ - { - "type": "null" + "type": "array", + "items": { + "title": "Release", + "description": "A release.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "assets_url": { + "type": "string", + "format": "uri" + }, + "upload_url": { + "type": "string" + }, + "tarball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "zipball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "tag_name": { + "description": "The name of the tag.", + "type": "string", + "examples": [ + "v1.0.0" + ] + }, + "target_commitish": { + "description": "Specifies the commitish value that determines where the Git tag is created from.", + "type": "string", + "examples": [ + "master" + ] + }, + "name": { + "type": [ + "string", + "null" + ] + }, + "body": { + "type": [ + "string", + "null" + ] + }, + "draft": { + "description": "true to create a draft (unpublished) release, false to create a published one.", + "type": "boolean", + "examples": [ + false + ] + }, + "prerelease": { + "description": "Whether to identify the release as a prerelease or a full release.", + "type": "boolean", + "examples": [ + false + ] + }, + "immutable": { + "description": "Whether or not the release is immutable.", + "type": "boolean", + "examples": [ + false + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "author": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - { - "title": "Simple User", - "description": "A GitHub user.", + "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" + ] + }, + "assets": { + "type": "array", + "items": { + "title": "Release Asset", + "description": "Data related to a release.", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] + "url": { + "type": "string", + "format": "uri" }, - "login": { + "browser_download_url": { "type": "string", - "examples": [ - "octocat" - ] + "format": "uri" }, "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + "type": "integer" }, "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] + "type": "string" }, - "avatar_url": { + "name": { + "description": "The file name of the asset.", "type": "string", - "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "Team Environment" ] }, - "gravatar_id": { + "label": { "type": [ "string", "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "subscriptions_url": { + "state": { + "description": "State of the release asset.", "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "enum": [ + "uploaded", + "open" ] }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + "content_type": { + "type": "string" }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "size": { + "type": "integer" }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "digest": { + "type": [ + "string", + "null" ] }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "download_count": { + "type": "integer" }, - "type": { + "created_at": { "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" + "format": "date-time" }, - "starred_at": { + "updated_at": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "format": "date-time" }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "uploader": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } ] } }, "required": [ - "avatar_url", - "events_url", - "followers_url", - "following_url", - "gists_url", - "gravatar_id", - "html_url", "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", "node_id", - "login", - "organizations_url", - "received_events_url", - "repos_url", - "site_admin", - "starred_url", - "subscriptions_url", - "type", - "url" + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" ] } - ] - }, - "body": { - "description": "The text of the review.", - "type": "string", - "examples": [ - "This looks great." - ] - }, - "state": { - "type": "string", - "examples": [ - "CHANGES_REQUESTED" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - ] - }, - "pull_request_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" - ] - }, - "_links": { - "type": "object", - "properties": { - "html": { - "type": "object", - "properties": { - "href": { - "type": "string" - } + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "mentions_count": { + "type": "integer" + }, + "discussion_url": { + "description": "The URL of the release discussion.", + "type": "string", + "format": "uri" + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" }, - "required": [ - "href" - ] - }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string" - } + "total_count": { + "type": "integer" }, - "required": [ - "href" - ] - } - }, - "required": [ - "html", - "pull_request" - ] - }, - "submitted_at": { - "type": "string", - "format": "date-time" - }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", - "type": [ - "string", - "null" - ], - "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" - ] - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" + } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" + ] + } }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" - ] - } - }, - "required": [ - "id", - "node_id", - "user", - "body", - "state", - "commit_id", - "html_url", - "pull_request_url", - "_links", - "author_association" - ] + "required": [ + "assets_url", + "upload_url", + "tarball_url", + "zipball_url", + "created_at", + "published_at", + "draft", + "id", + "node_id", + "author", + "html_url", + "name", + "prerelease", + "tag_name", + "target_commitish", + "assets", + "url" + ] + } }, "examples": { "default": { - "value": { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", - "user": { - "login": "octocat", + "value": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", + "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", + "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", + "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", + "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "Here is the body for the review.", - "state": "APPROVED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", - "_links": { - "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + "node_id": "MDc6UmVsZWFzZTE=", + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "immutable": false, + "created_at": "2013-02-27T19:35:32Z", + "published_at": "2013-02-27T19:35:32Z", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" - } - }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" - } + "assets": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } + } + ] + } + ] } } } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } } }, "404": { @@ -659606,20 +672362,20 @@ "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" + "category": "releases", + "subcategory": "releases" } }, - "put": { - "summary": "Update a review for a pull request", - "description": "Updates the contents of a specified review summary comment.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "post": { + "summary": "Create a release", + "description": "Users with push access to the repository can create a release.\n\n> [!NOTE]\n> If the commit identified by `target_commitish` (or, when `target_commitish` is omitted, the latest commit on the default branch) adds or modifies any file under `.github/workflows/` relative to the repository's default branch, the authenticating token must be authorized to modify workflows. Otherwise, this endpoint returns `404 Not Found`; some authentication paths surface `403 Resource not accessible by integration` instead.\n\nOAuth app tokens and personal access tokens (classic) need the `workflow` scope when the resolved target commit modifies workflow files. Fine-grained access tokens and GitHub App installation tokens also need the \"Workflows\" repository permission (write). The `GITHUB_TOKEN` available to GitHub Actions cannot be authorized for this; for more information, see \"[Automatic token authentication](https://docs.github.com/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)\".\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/update-review", + "operationId": "repos/create-release", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#update-a-review-for-a-pull-request" + "url": "https://docs.github.com/rest/releases/releases#create-a-release" }, "parameters": [ { @@ -659639,24 +672395,6 @@ "schema": { "type": "string" } - }, - { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "review_id", - "description": "The unique identifier of the review.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } } ], "requestBody": { @@ -659666,19 +672404,66 @@ "schema": { "type": "object", "properties": { + "tag_name": { + "type": "string", + "description": "The name of the tag." + }, + "target_commitish": { + "type": "string", + "description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch." + }, + "name": { + "type": "string", + "description": "The name of the release." + }, "body": { "type": "string", - "description": "The body text of the pull request review." + "description": "Text describing the contents of the tag." + }, + "draft": { + "type": "boolean", + "description": "`true` to create a draft (unpublished) release, `false` to create a published one.", + "default": false + }, + "prerelease": { + "type": "boolean", + "description": "`true` to identify the release as a prerelease. `false` to identify the release as a full release.", + "default": false + }, + "discussion_category_name": { + "type": "string", + "description": "If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository. For more information, see \"[Managing categories for discussions in your repository](https://docs.github.com/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository).\"" + }, + "generate_release_notes": { + "type": "boolean", + "description": "Whether to automatically generate the name and body for this release. If `name` is specified, the specified name will be used; otherwise, a name will be automatically generated. If `body` is specified, the body will be pre-pended to the automatically generated notes.", + "default": false + }, + "make_latest": { + "type": "string", + "description": "Specifies whether this release should be set as the latest release for the repository. Drafts and prereleases cannot be set as latest. Defaults to `true` for newly published releases. `legacy` specifies that the latest release should be determined based on the release creation date and higher semantic version.", + "enum": [ + "true", + "false", + "legacy" + ], + "default": "true" } }, "required": [ - "body" + "tag_name" ] }, "examples": { "default": { "value": { - "body": "This is close to perfect! Please address the suggested inline change. And add more about this." + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "generate_release_notes": false } } } @@ -659686,275 +672471,541 @@ } }, "responses": { - "200": { + "201": { "description": "Response", "content": { "application/json": { "schema": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", + "title": "Release", + "description": "A release.", "type": "object", "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "assets_url": { + "type": "string", + "format": "uri" + }, + "upload_url": { + "type": "string" + }, + "tarball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "zipball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, "id": { - "description": "Unique identifier of the review", - "type": "integer", - "format": "int64", + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "tag_name": { + "description": "The name of the tag.", + "type": "string", "examples": [ - 42 + "v1.0.0" ] }, - "node_id": { + "target_commitish": { + "description": "Specifies the commitish value that determines where the Git tag is created from.", "type": "string", "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + "master" ] }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "name": { + "type": [ + "string", + "null" ] }, "body": { - "description": "The text of the review.", - "type": "string", - "examples": [ - "This looks great." + "type": [ + "string", + "null" ] }, - "state": { - "type": "string", + "draft": { + "description": "true to create a draft (unpublished) release, false to create a published one.", + "type": "boolean", "examples": [ - "CHANGES_REQUESTED" + false ] }, - "html_url": { - "type": "string", - "format": "uri", + "prerelease": { + "description": "Whether to identify the release as a prerelease or a full release.", + "type": "boolean", "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + false ] }, - "pull_request_url": { - "type": "string", - "format": "uri", + "immutable": { + "description": "Whether or not the release is immutable.", + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" + false ] }, - "_links": { + "created_at": { + "type": "string", + "format": "date-time" + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "author": { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "html": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "name": { + "type": [ + "string", + "null" ] }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } }, "required": [ - "html", - "pull_request" + "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" ] }, - "submitted_at": { - "type": "string", - "format": "date-time" - }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", - "type": [ - "string", - "null" - ], - "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" - ] + "assets": { + "type": "array", + "items": { + "title": "Release Asset", + "description": "Data related to a release.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "browser_download_url": { + "type": "string", + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "description": "The file name of the asset.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" + ] + } }, "body_html": { "type": "string" @@ -659962,44 +673013,106 @@ "body_text": { "type": "string" }, - "author_association": { - "title": "author_association", + "mentions_count": { + "type": "integer" + }, + "discussion_url": { + "description": "The URL of the release discussion.", "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" + "format": "uri" + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" + } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" ] } }, "required": [ + "assets_url", + "upload_url", + "tarball_url", + "zipball_url", + "created_at", + "published_at", + "draft", "id", "node_id", - "user", - "body", - "state", - "commit_id", + "author", "html_url", - "pull_request_url", - "_links", - "author_association" + "name", + "prerelease", + "tag_name", + "target_commitish", + "assets", + "url" ] }, "examples": { "default": { "value": { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", - "user": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", + "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", + "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", + "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", + "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", + "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", + "id": 1, + "node_id": "MDc6UmVsZWFzZTE=", + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "immutable": false, + "created_at": "2013-02-27T19:35:32Z", + "published_at": "2013-02-27T19:35:32Z", + "author": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -660019,21 +673132,77 @@ "type": "User", "site_admin": false }, - "body": "This is close to perfect! Please address the suggested inline change. And add more about this.", - "state": "CHANGES_REQUESTED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", - "_links": { - "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + "assets": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } } - }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" + ] + } + } + } + } + }, + "headers": { + "Location": { + "example": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "schema": { + "type": "string" + } + } + } + }, + "404": { + "description": "Not Found if the discussion category name is invalid", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" } } } @@ -660045,8 +673214,8 @@ "content": { "application/json": { "schema": { - "title": "Validation Error Simple", - "description": "Validation Error Simple", + "title": "Validation Error", + "description": "Validation Error", "type": "object", "required": [ "message", @@ -660062,7 +673231,52 @@ "errors": { "type": "array", "items": { - "type": "string" + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } } } } @@ -660072,22 +673286,25 @@ } }, "x-github": { + "triggersNotification": true, "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" + "category": "releases", + "subcategory": "releases" } - }, - "delete": { - "summary": "Delete a pending review for a pull request", - "description": "Deletes a pull request review that has not been submitted. Submitted reviews cannot be deleted.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + } + }, + "/repos/{owner}/{repo}/releases/assets/{asset_id}": { + "get": { + "summary": "Get a release asset", + "description": "To download the asset's binary content:\n\n- If within a browser, fetch the location specified in the `browser_download_url` key provided in the response.\n- Alternatively, set the `Accept` header of the request to \n [`application/octet-stream`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types). \n The API will either redirect the client to the location, or stream it directly if possible.\n API clients should handle both a `200` or `302` response.", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/delete-pending-review", + "operationId": "repos/get-release-asset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#delete-a-pending-review-for-a-pull-request" + "url": "https://docs.github.com/rest/releases/assets#get-a-release-asset" }, "parameters": [ { @@ -660109,17 +673326,8 @@ } }, { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "review_id", - "description": "The unique identifier of the review.", + "name": "asset_id", + "description": "The unique identifier of the asset.", "in": "path", "required": true, "schema": { @@ -660133,25 +673341,69 @@ "content": { "application/json": { "schema": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", + "title": "Release Asset", + "description": "Data related to a release.", "type": "object", "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "browser_download_url": { + "type": "string", + "format": "uri" + }, "id": { - "description": "Unique identifier of the review", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] + "type": "integer" }, "node_id": { + "type": "string" + }, + "name": { + "description": "The file name of the asset.", "type": "string", "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + "Team Environment" ] }, - "user": { + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { "anyOf": [ { "type": "null" @@ -660325,123 +673577,42 @@ ] } ] - }, - "body": { - "description": "The text of the review.", - "type": "string", - "examples": [ - "This looks great." - ] - }, - "state": { - "type": "string", - "examples": [ - "CHANGES_REQUESTED" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - ] - }, - "pull_request_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" - ] - }, - "_links": { - "type": "object", - "properties": { - "html": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - } - }, - "required": [ - "html", - "pull_request" - ] - }, - "submitted_at": { - "type": "string", - "format": "date-time" - }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", - "type": [ - "string", - "null" - ], - "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" - ] - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" - ] } }, "required": [ "id", - "node_id", - "user", - "body", + "name", + "content_type", + "size", + "digest", "state", - "commit_id", - "html_url", - "pull_request_url", - "_links", - "author_association" + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" ] }, "examples": { "default": { "value": { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", - "user": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -660460,51 +673631,6 @@ "received_events_url": "https://api.github.com/users/octocat/received_events", "type": "User", "site_admin": false - }, - "body": "This is close to perfect! Please address the suggested inline change.", - "state": "CHANGES_REQUESTED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", - "_links": { - "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" - } - }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error Simple", - "description": "Validation Error Simple", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "string" } } } @@ -660537,702 +673663,28 @@ } } } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" - } - } - }, - "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments": { - "get": { - "summary": "List comments for a pull request review", - "description": "Lists comments for a specific pull request review.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", - "tags": [ - "pulls" - ], - "operationId": "pulls/list-comments-for-review", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#list-comments-for-a-pull-request-review" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "review_id", - "description": "The unique identifier of the review.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Legacy Review Comment", - "description": "Legacy Review Comment", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - ] - }, - "pull_request_review_id": { - "type": [ - "integer", - "null" - ], - "format": "int64", - "examples": [ - 42 - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 10 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw" - ] - }, - "diff_hunk": { - "type": "string", - "examples": [ - "@@ -16,33 +16,40 @@ public class Connection : IConnection..." - ] - }, - "path": { - "type": "string", - "examples": [ - "file1.txt" - ] - }, - "position": { - "type": [ - "integer", - "null" - ], - "examples": [ - 1 - ] - }, - "original_position": { - "type": "integer", - "examples": [ - 4 - ] - }, - "commit_id": { - "type": "string", - "examples": [ - "6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "original_commit_id": { - "type": "string", - "examples": [ - "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840" - ] - }, - "in_reply_to_id": { - "type": "integer", - "examples": [ - 8 - ] - }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "body": { - "type": "string", - "examples": [ - "Great stuff" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-14T16:00:49Z" - ] - }, - "updated_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-14T16:00:49Z" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - ] - }, - "pull_request_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1" - ] - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" - ] - }, - "_links": { - "type": "object", - "properties": { - "self": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "html": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "pull_request": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - } - }, - "required": [ - "self", - "html", - "pull_request" - ] - }, - "body_text": { - "type": "string" - }, - "body_html": { - "type": "string" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - }, - "side": { - "description": "The side of the first line of the range for a multi-line comment.", - "enum": [ - "LEFT", - "RIGHT" - ], - "default": "RIGHT", - "type": "string" - }, - "start_side": { - "type": [ - "string", - "null" - ], - "description": "The side of the first line of the range for a multi-line comment.", - "enum": [ - "LEFT", - "RIGHT", - null - ], - "default": "RIGHT" - }, - "line": { - "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", - "type": "integer", - "examples": [ - 2 - ] - }, - "original_line": { - "description": "The original line of the blob to which the comment applies. The last line of the range for a multi-line comment", - "type": "integer", - "examples": [ - 2 - ] - }, - "start_line": { - "description": "The first line of the range for a multi-line comment.", - "type": [ - "integer", - "null" - ], - "examples": [ - 2 - ] - }, - "original_start_line": { - "description": "The original first line of the range for a multi-line comment.", - "type": [ - "integer", - "null" - ], - "examples": [ - 2 - ] - }, - "subject_type": { - "description": "The level at which the comment is targeted, can be a diff line or a file.", - "type": "string", - "enum": [ - "line", - "file" - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "body", - "diff_hunk", - "path", - "position", - "original_position", - "commit_id", - "original_commit_id", - "user", - "pull_request_review_id", - "html_url", - "pull_request_url", - "_links", - "author_association", - "created_at", - "updated_at" - ] - } - }, - "examples": { - "default": { - "value": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", - "pull_request_review_id": 42, - "id": 10, - "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw", - "diff_hunk": "@@ -16,33 +16,40 @@ public class Connection : IConnection...", - "path": "file1.txt", - "position": 1, - "original_position": 4, - "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "original_commit_id": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840", - "in_reply_to_id": 8, - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "Great stuff!", - "created_at": "2011-04-14T16:00:49Z", - "updated_at": "2011-04-14T16:00:49Z", - "html_url": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "author_association": "NONE", - "_links": { - "self": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - }, - "html": { - "href": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1" - } - } - } - ] - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } + "302": { + "description": "Found" } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" - } - } - }, - "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals": { - "put": { - "summary": "Dismiss a review for a pull request", - "description": "Dismisses a specified review on a pull request.\n\n> [!NOTE]\n> To dismiss a pull request review on a [protected branch](https://docs.github.com/rest/branches/branch-protection), you must be a repository administrator or be included in the list of people or teams who can dismiss pull request reviews.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "category": "releases", + "subcategory": "assets" + } + }, + "patch": { + "summary": "Update a release asset", + "description": "Users with push access to the repository can edit a release asset.", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/dismiss-review", + "operationId": "repos/update-release-asset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#dismiss-a-review-for-a-pull-request" + "url": "https://docs.github.com/rest/releases/assets#update-a-release-asset" }, "parameters": [ { @@ -661254,17 +673706,8 @@ } }, { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "review_id", - "description": "The unique identifier of the review.", + "name": "asset_id", + "description": "The unique identifier of the asset.", "in": "path", "required": true, "schema": { @@ -661273,35 +673716,33 @@ } ], "requestBody": { - "required": true, + "required": false, "content": { "application/json": { "schema": { "type": "object", "properties": { - "message": { + "name": { "type": "string", - "description": "The message for the pull request review dismissal" + "description": "The file name of the asset." }, - "event": { + "label": { + "type": "string", + "description": "An alternate short description of the asset. Used in place of the filename." + }, + "state": { "type": "string", - "enum": [ - "DISMISS" - ], "examples": [ - "\"DISMISS\"" + "\"uploaded\"" ] } - }, - "required": [ - "message" - ] + } }, "examples": { "default": { "value": { - "message": "You are dismissed", - "event": "DISMISS" + "name": "foo-1.0.0-osx.zip", + "label": "Mac binary" } } } @@ -661314,25 +673755,69 @@ "content": { "application/json": { "schema": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", + "title": "Release Asset", + "description": "Data related to a release.", "type": "object", "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "browser_download_url": { + "type": "string", + "format": "uri" + }, "id": { - "description": "Unique identifier of the review", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] + "type": "integer" }, "node_id": { + "type": "string" + }, + "name": { + "description": "The file name of the asset.", "type": "string", "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + "Team Environment" ] }, - "user": { + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { "anyOf": [ { "type": "null" @@ -661506,123 +673991,975 @@ ] } ] + } + }, + "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" + ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "releases", + "subcategory": "assets" + } + }, + "delete": { + "summary": "Delete a release asset", + "description": "", + "tags": [ + "repos" + ], + "operationId": "repos/delete-release-asset", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/releases/assets#delete-a-release-asset" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "asset_id", + "description": "The unique identifier of the asset.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "Response" + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "body": { - "description": "The text of the review.", + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "releases", + "subcategory": "assets" + } + } + }, + "/repos/{owner}/{repo}/releases/generate-notes": { + "post": { + "summary": "Generate release notes content for a release", + "description": "Generate a name and body describing a [release](https://docs.github.com/rest/releases/releases#get-a-release). The body content will be markdown formatted and contain information like the changes since last release and users who contributed. The generated release notes are not saved anywhere. They are intended to be generated and used when creating a new release.", + "tags": [ + "repos" + ], + "operationId": "repos/generate-release-notes", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/releases/releases#generate-release-notes-content-for-a-release" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "tag_name": { + "type": "string", + "description": "The tag name for the release. This can be an existing tag or a new one." + }, + "target_commitish": { + "type": "string", + "description": "Specifies the commitish value that will be the target for the release's tag. Required if the supplied tag_name does not reference an existing tag. Ignored if the tag_name already exists." + }, + "previous_tag_name": { + "type": "string", + "description": "The name of the previous tag to use as the starting point for the release notes. Use to manually specify the range for the set of changes considered as part this release." + }, + "configuration_file_path": { + "type": "string", + "description": "Specifies a path to a file in the repository containing configuration settings used for generating the release notes. If unspecified, the configuration file located in the repository at '.github/release.yml' or '.github/release.yaml' will be used. If that is not present, the default configuration will be used." + } + }, + "required": [ + "tag_name" + ] + }, + "examples": { + "default": { + "value": { + "tag_name": "v1.0.0", + "target_commitish": "main", + "previous_tag_name": "v0.9.2", + "configuration_file_path": ".github/custom_release_config.yml" + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Name and body of generated release notes", + "content": { + "application/json": { + "schema": { + "title": "Generated Release Notes Content", + "description": "Generated name and body describing a release", + "type": "object", + "properties": { + "name": { + "description": "The generated name of the release", "type": "string", "examples": [ - "This looks great." + "Release v1.0.0 is now available!" ] }, - "state": { + "body": { + "description": "The generated body describing the contents of the release supporting markdown formatting", + "type": "string" + } + }, + "required": [ + "name", + "body" + ] + }, + "examples": { + "default": { + "value": { + "name": "Release v1.0.0 is now available!", + "body": "##Changes in Release v1.0.0 ... ##Contributors @monalisa" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "releases", + "subcategory": "releases" + } + } + }, + "/repos/{owner}/{repo}/releases/latest": { + "get": { + "summary": "Get the latest release", + "description": "View the latest published full release for the repository.\n\nThe latest release is the most recent non-prerelease, non-draft release, sorted by the `created_at` attribute. The `created_at` attribute is the date of the commit used for the release, and not the date when the release was drafted or published.", + "tags": [ + "repos" + ], + "operationId": "repos/get-latest-release", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/releases/releases#get-the-latest-release" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Release", + "description": "A release.", + "type": "object", + "properties": { + "url": { "type": "string", - "examples": [ - "CHANGES_REQUESTED" - ] + "format": "uri" }, "html_url": { "type": "string", - "format": "uri", + "format": "uri" + }, + "assets_url": { + "type": "string", + "format": "uri" + }, + "upload_url": { + "type": "string" + }, + "tarball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "zipball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "tag_name": { + "description": "The name of the tag.", + "type": "string", "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + "v1.0.0" ] }, - "pull_request_url": { + "target_commitish": { + "description": "Specifies the commitish value that determines where the Git tag is created from.", "type": "string", - "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" + "master" ] }, - "_links": { + "name": { + "type": [ + "string", + "null" + ] + }, + "body": { + "type": [ + "string", + "null" + ] + }, + "draft": { + "description": "true to create a draft (unpublished) release, false to create a published one.", + "type": "boolean", + "examples": [ + false + ] + }, + "prerelease": { + "description": "Whether to identify the release as a prerelease or a full release.", + "type": "boolean", + "examples": [ + false + ] + }, + "immutable": { + "description": "Whether or not the release is immutable.", + "type": "boolean", + "examples": [ + false + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "author": { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "html": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "assets": { + "type": "array", + "items": { + "title": "Release Asset", + "description": "Data related to a release.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "browser_download_url": { + "type": "string", + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "description": "The file name of the asset.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" + ] + } + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "mentions_count": { + "type": "integer" + }, + "discussion_url": { + "description": "The URL of the release discussion.", + "type": "string", + "format": "uri" + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" } }, "required": [ - "html", - "pull_request" - ] - }, - "submitted_at": { - "type": "string", - "format": "date-time" - }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", - "type": [ - "string", - "null" - ], - "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" - ] - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" ] } }, "required": [ + "assets_url", + "upload_url", + "tarball_url", + "zipball_url", + "created_at", + "published_at", + "draft", "id", "node_id", - "user", - "body", - "state", - "commit_id", + "author", "html_url", - "pull_request_url", - "_links", - "author_association" + "name", + "prerelease", + "tag_name", + "target_commitish", + "assets", + "url" ] }, "examples": { "default": { "value": { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", - "user": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", + "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", + "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", + "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", + "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", + "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", + "id": 1, + "node_id": "MDc6UmVsZWFzZTE=", + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "immutable": false, + "created_at": "2013-02-27T19:35:32Z", + "published_at": "2013-02-27T19:35:32Z", + "author": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -661642,21 +674979,43 @@ "type": "User", "site_admin": false }, - "body": "Here is the body for the review.", - "state": "DISMISSED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", - "_links": { - "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + "assets": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } } - }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" + ] } } } @@ -661688,57 +675047,27 @@ } } } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error Simple", - "description": "Validation Error Simple", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" + "category": "releases", + "subcategory": "releases" } } }, - "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events": { - "post": { - "summary": "Submit a review for a pull request", - "description": "Submits a pending review for a pull request. For more information about creating a pending review for a pull request, see \"[Create a review for a pull request](https://docs.github.com/rest/pulls/reviews#create-a-review-for-a-pull-request).\"\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "/repos/{owner}/{repo}/releases/tags/{tag}": { + "get": { + "summary": "Get a release by tag name", + "description": "Get a published release with the specified tag.", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/submit-review", + "operationId": "repos/get-release-by-tag", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request" + "url": "https://docs.github.com/rest/releases/releases#get-a-release-by-tag-name" }, "parameters": [ { @@ -661760,375 +675089,659 @@ } }, { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "review_id", - "description": "The unique identifier of the review.", + "name": "tag", + "description": "tag parameter", "in": "path", "required": true, "schema": { - "type": "integer" - } + "type": "string" + }, + "x-multi-segment": true } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "body": { - "type": "string", - "description": "The body text of the pull request review" - }, - "event": { - "type": "string", - "description": "The review action you want to perform. The review actions include: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. When you leave this blank, the API returns _HTTP 422 (Unrecognizable entity)_ and sets the review action state to `PENDING`, which means you will need to re-submit the pull request review using a review action.", - "enum": [ - "APPROVE", - "REQUEST_CHANGES", - "COMMENT" - ] - } - }, - "required": [ - "event" - ] - }, - "examples": { - "default": { - "value": { - "body": "Here is the body for the review.", - "event": "REQUEST_CHANGES" - } - } - } - } - } - }, "responses": { "200": { "description": "Response", "content": { "application/json": { "schema": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", + "title": "Release", + "description": "A release.", "type": "object", "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "assets_url": { + "type": "string", + "format": "uri" + }, + "upload_url": { + "type": "string" + }, + "tarball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "zipball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, "id": { - "description": "Unique identifier of the review", - "type": "integer", - "format": "int64", + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "tag_name": { + "description": "The name of the tag.", + "type": "string", "examples": [ - 42 + "v1.0.0" ] }, - "node_id": { + "target_commitish": { + "description": "Specifies the commitish value that determines where the Git tag is created from.", "type": "string", "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + "master" ] }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "name": { + "type": [ + "string", + "null" ] }, "body": { - "description": "The text of the review.", - "type": "string", - "examples": [ - "This looks great." + "type": [ + "string", + "null" ] }, - "state": { - "type": "string", + "draft": { + "description": "true to create a draft (unpublished) release, false to create a published one.", + "type": "boolean", "examples": [ - "CHANGES_REQUESTED" + false ] }, - "html_url": { - "type": "string", - "format": "uri", + "prerelease": { + "description": "Whether to identify the release as a prerelease or a full release.", + "type": "boolean", "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + false ] }, - "pull_request_url": { - "type": "string", - "format": "uri", + "immutable": { + "description": "Whether or not the release is immutable.", + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" + false ] }, - "_links": { + "created_at": { + "type": "string", + "format": "date-time" + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "author": { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "html": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "name": { + "type": [ + "string", + "null" ] }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "assets": { + "type": "array", + "items": { + "title": "Release Asset", + "description": "Data related to a release.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "browser_download_url": { + "type": "string", + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "description": "The file name of the asset.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" + ] + } + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "mentions_count": { + "type": "integer" + }, + "discussion_url": { + "description": "The URL of the release discussion.", + "type": "string", + "format": "uri" + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" } }, "required": [ - "html", - "pull_request" - ] - }, - "submitted_at": { - "type": "string", - "format": "date-time" - }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", - "type": [ - "string", - "null" - ], - "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" - ] - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" ] } }, "required": [ + "assets_url", + "upload_url", + "tarball_url", + "zipball_url", + "created_at", + "published_at", + "draft", "id", "node_id", - "user", - "body", - "state", - "commit_id", + "author", "html_url", - "pull_request_url", - "_links", - "author_association" + "name", + "prerelease", + "tag_name", + "target_commitish", + "assets", + "url" ] }, "examples": { "default": { "value": { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", - "user": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", + "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", + "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", + "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", + "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", + "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", + "id": 1, + "node_id": "MDc6UmVsZWFzZTE=", + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "immutable": false, + "created_at": "2013-02-27T19:35:32Z", + "published_at": "2013-02-27T19:35:32Z", + "author": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -662148,21 +675761,43 @@ "type": "User", "site_admin": false }, - "body": "Here is the body for the review.", - "state": "APPROVED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", - "_links": { - "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + "assets": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } } - }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" + ] } } } @@ -662194,83 +675829,27 @@ } } } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error Simple", - "description": "Validation Error Simple", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" + "category": "releases", + "subcategory": "releases" } } }, - "/repos/{owner}/{repo}/pulls/{pull_number}/update-branch": { - "put": { - "summary": "Update a pull request branch", - "description": "Updates the pull request branch with the latest upstream changes by merging HEAD from the base branch into the pull request branch.\nNote: If making a request on behalf of a GitHub App you must also have permissions to write the contents of the head repository.", + "/repos/{owner}/{repo}/releases/{release_id}": { + "get": { + "summary": "Get a release", + "description": "Gets a public release with the specified release ID.\n\n> [!NOTE]\n> This returns an `upload_url` key corresponding to the endpoint for uploading release assets. This key is a hypermedia resource. For more information, see \"[Getting started with the REST API](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia).\"", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/update-branch", + "operationId": "repos/get-release", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/pulls#update-a-pull-request-branch" + "url": "https://docs.github.com/rest/releases/releases#get-a-release" }, "parameters": [ { @@ -662292,8 +675871,8 @@ } }, { - "name": "pull_number", - "description": "The number that identifies the pull request.", + "name": "release_id", + "description": "The unique identifier of the release.", "in": "path", "required": true, "schema": { @@ -662301,1556 +675880,713 @@ } } ], - "requestBody": { - "required": false, - "content": { - "application/json": { - "schema": { - "type": [ - "object", - "null" - ], - "properties": { - "expected_head_sha": { - "type": "string", - "description": "The expected SHA of the pull request's HEAD ref. This is the most recent commit on the pull request's branch. If the expected SHA does not match the pull request's HEAD, you will receive a `422 Unprocessable Entity` status. You can use the \"[List commits](https://docs.github.com/rest/commits/commits#list-commits)\" endpoint to find the most recent commit SHA. Default: SHA of the pull request's current HEAD ref." - } - } - }, - "examples": { - "default": { - "value": { - "expected_head_sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e" - } - } - } - } - } - }, - "responses": { - "202": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "url": { - "type": "string" - } - } - }, - "examples": { - "default": { - "value": { - "message": "Updating pull request branch.", - "url": "https://github.com/repos/octocat/Hello-World/pulls/53" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": false, - "category": "pulls", - "subcategory": "pulls" - } - } - }, - "/repos/{owner}/{repo}/readme": { - "get": { - "summary": "Get a repository README", - "description": "Gets the preferred README for a repository.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw file contents. This is the default if you do not specify a media type.\n- **`application/vnd.github.html+json`**: Returns the README in HTML. Markup languages are rendered to HTML using GitHub's open-source [Markup library](https://github.com/github/markup).", - "tags": [ - "repos" - ], - "operationId": "repos/get-readme", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/contents#get-a-repository-readme" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ref", - "description": "The name of the commit/branch/tag. Default: the repository’s default branch.", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - } - ], "responses": { "200": { - "description": "Response", + "description": "**Note:** This returns an `upload_url` key corresponding to the endpoint for uploading release assets. This key is a hypermedia resource. For more information, see \"[Getting started with the REST API](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia).\"", "content": { "application/json": { "schema": { - "title": "Content File", - "description": "Content File", + "title": "Release", + "description": "A release.", "type": "object", "properties": { - "type": { + "url": { "type": "string", - "enum": [ - "file" - ] - }, - "encoding": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "name": { - "type": "string" - }, - "path": { - "type": "string" - }, - "content": { - "type": "string" - }, - "sha": { - "type": "string" + "format": "uri" }, - "url": { + "html_url": { "type": "string", "format": "uri" }, - "git_url": { - "type": [ - "string", - "null" - ], + "assets_url": { + "type": "string", "format": "uri" }, - "html_url": { + "upload_url": { + "type": "string" + }, + "tarball_url": { "type": [ "string", "null" ], "format": "uri" }, - "download_url": { + "zipball_url": { "type": [ "string", "null" ], "format": "uri" }, - "_links": { - "type": "object", - "properties": { - "git": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "html": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "self": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "git", - "html", - "self" - ] + "id": { + "type": "integer" }, - "target": { + "node_id": { + "type": "string" + }, + "tag_name": { + "description": "The name of the tag.", "type": "string", "examples": [ - "\"actual/actual.md\"" + "v1.0.0" ] }, - "submodule_git_url": { + "target_commitish": { + "description": "Specifies the commitish value that determines where the Git tag is created from.", "type": "string", "examples": [ - "\"git://example.com/defunkt/dotjs.git\"" + "master" ] - } - }, - "required": [ - "_links", - "git_url", - "html_url", - "download_url", - "name", - "path", - "sha", - "size", - "type", - "url", - "content", - "encoding" - ] - }, - "examples": { - "default": { - "value": { - "type": "file", - "encoding": "base64", - "size": 5362, - "name": "README.md", - "path": "README.md", - "content": "encoded content ...", - "sha": "3d21ec53a331a6f037a91c368710b99387d012c1", - "url": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", - "git_url": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", - "html_url": "https://github.com/octokit/octokit.rb/blob/master/README.md", - "download_url": "https://raw.githubusercontent.com/octokit/octokit.rb/master/README.md", - "_links": { - "git": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", - "self": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", - "html": "https://github.com/octokit/octokit.rb/blob/master/README.md" - } - } - } - } - } - } - }, - "304": { - "description": "Not modified" - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "contents" - } - } - }, - "/repos/{owner}/{repo}/readme/{dir}": { - "get": { - "summary": "Get a repository README for a directory", - "description": "Gets the README from a repository directory.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw file contents. This is the default if you do not specify a media type.\n- **`application/vnd.github.html+json`**: Returns the README in HTML. Markup languages are rendered to HTML using GitHub's open-source [Markup library](https://github.com/github/markup).", - "tags": [ - "repos" - ], - "operationId": "repos/get-readme-in-directory", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/contents#get-a-repository-readme-for-a-directory" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "dir", - "description": "The alternate path to look for a README file", - "in": "path", - "required": true, - "schema": { - "type": "string" - }, - "x-multi-segment": true - }, - { - "name": "ref", - "description": "The name of the commit/branch/tag. Default: the repository’s default branch.", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Content File", - "description": "Content File", - "type": "object", - "properties": { - "type": { - "type": "string", - "enum": [ - "file" + "name": { + "type": [ + "string", + "null" ] }, - "encoding": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "name": { - "type": "string" + "body": { + "type": [ + "string", + "null" + ] }, - "path": { - "type": "string" + "draft": { + "description": "true to create a draft (unpublished) release, false to create a published one.", + "type": "boolean", + "examples": [ + false + ] }, - "content": { - "type": "string" + "prerelease": { + "description": "Whether to identify the release as a prerelease or a full release.", + "type": "boolean", + "examples": [ + false + ] }, - "sha": { - "type": "string" + "immutable": { + "description": "Whether or not the release is immutable.", + "type": "boolean", + "examples": [ + false + ] }, - "url": { + "created_at": { "type": "string", - "format": "uri" - }, - "git_url": { - "type": [ - "string", - "null" - ], - "format": "uri" + "format": "date-time" }, - "html_url": { + "published_at": { "type": [ "string", "null" ], - "format": "uri" + "format": "date-time" }, - "download_url": { + "updated_at": { "type": [ "string", "null" ], - "format": "uri" + "format": "date-time" }, - "_links": { + "author": { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "git": { + "name": { "type": [ "string", "null" - ], - "format": "uri" + ] }, - "html": { + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { "type": [ "string", "null" ], - "format": "uri" + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] }, - "self": { + "url": { "type": "string", - "format": "uri" - } - }, - "required": [ - "git", - "html", - "self" - ] - }, - "target": { - "type": "string", - "examples": [ - "\"actual/actual.md\"" - ] - }, - "submodule_git_url": { - "type": "string", - "examples": [ - "\"git://example.com/defunkt/dotjs.git\"" - ] - } - }, - "required": [ - "_links", - "git_url", - "html_url", - "download_url", - "name", - "path", - "sha", - "size", - "type", - "url", - "content", - "encoding" - ] - }, - "examples": { - "default": { - "value": { - "type": "file", - "encoding": "base64", - "size": 5362, - "name": "README.md", - "path": "README.md", - "content": "encoded content ...", - "sha": "3d21ec53a331a6f037a91c368710b99387d012c1", - "url": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", - "git_url": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", - "html_url": "https://github.com/octokit/octokit.rb/blob/master/README.md", - "download_url": "https://raw.githubusercontent.com/octokit/octokit.rb/master/README.md", - "_links": { - "git": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", - "self": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", - "html": "https://github.com/octokit/octokit.rb/blob/master/README.md" - } - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] }, - "errors": { + "assets": { "type": "array", "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "contents" - } - } - }, - "/repos/{owner}/{repo}/releases": { - "get": { - "summary": "List releases", - "description": "This returns a list of releases, which does not include regular Git tags that have not been associated with a release. To get a list of Git tags, use the [Repository Tags API](https://docs.github.com/rest/repos/repos#list-repository-tags).\n\nInformation about published releases are available to everyone. Only users with push access will receive listings for draft releases.", - "tags": [ - "repos" - ], - "operationId": "repos/list-releases", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#list-releases" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Release", - "description": "A release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri" - }, - "assets_url": { - "type": "string", - "format": "uri" - }, - "upload_url": { - "type": "string" - }, - "tarball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "zipball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "tag_name": { - "description": "The name of the tag.", - "type": "string", - "examples": [ - "v1.0.0" - ] - }, - "target_commitish": { - "description": "Specifies the commitish value that determines where the Git tag is created from.", - "type": "string", - "examples": [ - "master" - ] - }, - "name": { - "type": [ - "string", - "null" - ] - }, - "body": { - "type": [ - "string", - "null" - ] - }, - "draft": { - "description": "true to create a draft (unpublished) release, false to create a published one.", - "type": "boolean", - "examples": [ - false - ] - }, - "prerelease": { - "description": "Whether to identify the release as a prerelease or a full release.", - "type": "boolean", - "examples": [ - false - ] - }, - "immutable": { - "description": "Whether or not the release is immutable.", - "type": "boolean", - "examples": [ - false - ] - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "author": { - "title": "Simple User", - "description": "A GitHub user.", + "title": "Release Asset", + "description": "Data related to a release.", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] + "url": { + "type": "string", + "format": "uri" }, - "login": { + "browser_download_url": { "type": "string", - "examples": [ - "octocat" - ] + "format": "uri" }, "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + "type": "integer" }, "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] + "type": "string" }, - "avatar_url": { + "name": { + "description": "The file name of the asset.", "type": "string", - "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "Team Environment" ] }, - "gravatar_id": { + "label": { "type": [ "string", "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "subscriptions_url": { + "state": { + "description": "State of the release asset.", "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "enum": [ + "uploaded", + "open" ] }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + "content_type": { + "type": "string" }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "size": { + "type": "integer" }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "digest": { + "type": [ + "string", + "null" ] }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "download_count": { + "type": "integer" }, - "type": { + "created_at": { "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" + "format": "date-time" }, - "starred_at": { + "updated_at": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "format": "date-time" }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "uploader": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } ] } }, "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" - ] - }, - "assets": { - "type": "array", - "items": { - "title": "Release Asset", - "description": "Data related to a release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "digest": { - "type": [ - "string", - "null" - ] - }, - "download_count": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "uploader": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" - ] - } - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "mentions_count": { - "type": "integer" - }, - "discussion_url": { - "description": "The URL of the release discussion.", - "type": "string", - "format": "uri" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - } - }, - "required": [ - "assets_url", - "upload_url", - "tarball_url", - "zipball_url", - "created_at", - "published_at", - "draft", - "id", - "node_id", - "author", - "html_url", - "name", - "prerelease", - "tag_name", - "target_commitish", - "assets", - "url" - ] - } - }, - "examples": { - "default": { - "value": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", - "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", - "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", - "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", - "id": 1, - "node_id": "MDc6UmVsZWFzZTE=", - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false, - "immutable": false, - "created_at": "2013-02-27T19:35:32Z", - "published_at": "2013-02-27T19:35:32Z", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "assets": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } - } + "name", + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" ] } - ] - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" }, - "documentation_url": { + "body_html": { "type": "string" }, - "url": { + "body_text": { "type": "string" }, - "status": { - "type": "string" + "mentions_count": { + "type": "integer" + }, + "discussion_url": { + "description": "The URL of the release discussion.", + "type": "string", + "format": "uri" + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" + } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" + ] + } + }, + "required": [ + "assets_url", + "upload_url", + "tarball_url", + "zipball_url", + "created_at", + "published_at", + "draft", + "id", + "node_id", + "author", + "html_url", + "name", + "prerelease", + "tag_name", + "target_commitish", + "assets", + "url" + ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", + "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", + "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", + "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", + "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", + "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", + "id": 1, + "node_id": "MDc6UmVsZWFzZTE=", + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "immutable": false, + "created_at": "2013-02-27T19:35:32Z", + "published_at": "2013-02-27T19:35:32Z", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "assets": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } + } + ] } } } } } + }, + "401": { + "description": "Unauthorized" } }, "x-github": { @@ -663860,16 +676596,16 @@ "subcategory": "releases" } }, - "post": { - "summary": "Create a release", - "description": "Users with push access to the repository can create a release.\n\n> [!NOTE]\n> If the commit identified by `target_commitish` (or, when `target_commitish` is omitted, the latest commit on the default branch) adds or modifies any file under `.github/workflows/` relative to the repository's default branch, the authenticating token must be authorized to modify workflows. Otherwise, this endpoint returns `404 Not Found`; some authentication paths surface `403 Resource not accessible by integration` instead.\n\nOAuth app tokens and personal access tokens (classic) need the `workflow` scope when the resolved target commit modifies workflow files. Fine-grained access tokens and GitHub App installation tokens also need the \"Workflows\" repository permission (write). The `GITHUB_TOKEN` available to GitHub Actions cannot be authorized for this; for more information, see \"[Automatic token authentication](https://docs.github.com/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)\".\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"", + "patch": { + "summary": "Update a release", + "description": "Users with push access to the repository can edit a release.\n\n> [!NOTE]\n> If the resolved target commit (the new value of `target_commitish` if you are changing it, otherwise the existing target) adds or modifies any file under `.github/workflows/` relative to the repository's default branch, the authenticating token must be authorized to modify workflows. Otherwise, this endpoint returns `404 Not Found`; some authentication paths surface `403 Resource not accessible by integration` instead.\n\nOAuth app tokens and personal access tokens (classic) need the `workflow` scope when the resolved target commit modifies workflow files. Fine-grained access tokens and GitHub App installation tokens also need the \"Workflows\" repository permission (write). The `GITHUB_TOKEN` available to GitHub Actions cannot be authorized for this; for more information, see \"[Automatic token authentication](https://docs.github.com/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)\".", "tags": [ "repos" ], - "operationId": "repos/create-release", + "operationId": "repos/update-release", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#create-a-release" + "url": "https://docs.github.com/rest/releases/releases#update-a-release" }, "parameters": [ { @@ -663889,10 +676625,19 @@ "schema": { "type": "string" } + }, + { + "name": "release_id", + "description": "The unique identifier of the release.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } } ], "requestBody": { - "required": true, + "required": false, "content": { "application/json": { "schema": { @@ -663916,22 +676661,11 @@ }, "draft": { "type": "boolean", - "description": "`true` to create a draft (unpublished) release, `false` to create a published one.", - "default": false + "description": "`true` makes the release a draft, and `false` publishes the release." }, "prerelease": { "type": "boolean", - "description": "`true` to identify the release as a prerelease. `false` to identify the release as a full release.", - "default": false - }, - "discussion_category_name": { - "type": "string", - "description": "If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository. For more information, see \"[Managing categories for discussions in your repository](https://docs.github.com/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository).\"" - }, - "generate_release_notes": { - "type": "boolean", - "description": "Whether to automatically generate the name and body for this release. If `name` is specified, the specified name will be used; otherwise, a name will be automatically generated. If `body` is specified, the body will be pre-pended to the automatically generated notes.", - "default": false + "description": "`true` to identify the release as a prerelease, `false` to identify the release as a full release." }, "make_latest": { "type": "string", @@ -663942,11 +676676,12 @@ "legacy" ], "default": "true" + }, + "discussion_category_name": { + "type": "string", + "description": "If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository. If there is already a discussion linked to the release, this parameter is ignored. For more information, see \"[Managing categories for discussions in your repository](https://docs.github.com/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository).\"" } - }, - "required": [ - "tag_name" - ] + } }, "examples": { "default": { @@ -663956,8 +676691,7 @@ "name": "v1.0.0", "body": "Description of the release", "draft": false, - "prerelease": false, - "generate_release_notes": false + "prerelease": false } } } @@ -663965,7 +676699,7 @@ } }, "responses": { - "201": { + "200": { "description": "Response", "content": { "application/json": { @@ -664667,14 +677401,6 @@ } } } - }, - "headers": { - "Location": { - "example": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "schema": { - "type": "string" - } - } } }, "404": { @@ -664702,19 +677428,67 @@ } } } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "releases", + "subcategory": "releases" + } + }, + "delete": { + "summary": "Delete a release", + "description": "Users with push access to the repository can delete a release.", + "tags": [ + "repos" + ], + "operationId": "repos/delete-release", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/releases/releases#delete-a-release" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "release_id", + "description": "The unique identifier of the release.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "Response" + }, + "404": { + "description": "Resource not found", "content": { "application/json": { "schema": { - "title": "Validation Error", - "description": "Validation Error", + "title": "Basic Error", + "description": "Basic Error", "type": "object", - "required": [ - "message", - "documentation_url" - ], "properties": { "message": { "type": "string" @@ -664722,56 +677496,11 @@ "documentation_url": { "type": "string" }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } + "url": { + "type": "string" + }, + "status": { + "type": "string" } } } @@ -664780,7 +677509,6 @@ } }, "x-github": { - "triggersNotification": true, "githubCloudOnly": false, "enabledForGitHubApps": true, "category": "releases", @@ -664788,17 +677516,17 @@ } } }, - "/repos/{owner}/{repo}/releases/assets/{asset_id}": { + "/repos/{owner}/{repo}/releases/{release_id}/assets": { "get": { - "summary": "Get a release asset", - "description": "To download the asset's binary content:\n\n- If within a browser, fetch the location specified in the `browser_download_url` key provided in the response.\n- Alternatively, set the `Accept` header of the request to \n [`application/octet-stream`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types). \n The API will either redirect the client to the location, or stream it directly if possible.\n API clients should handle both a `200` or `302` response.", + "summary": "List release assets", + "description": "", "tags": [ "repos" ], - "operationId": "repos/get-release-asset", + "operationId": "repos/list-release-assets", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/assets#get-a-release-asset" + "url": "https://docs.github.com/rest/releases/assets#list-release-assets" }, "parameters": [ { @@ -664820,13 +677548,31 @@ } }, { - "name": "asset_id", - "description": "The unique identifier of the asset.", + "name": "release_id", + "description": "The unique identifier of the release.", "in": "path", "required": true, "schema": { "type": "integer" } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } } ], "responses": { @@ -664835,331 +677581,315 @@ "content": { "application/json": { "schema": { - "title": "Release Asset", - "description": "Data related to a release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "digest": { - "type": [ - "string", - "null" - ] - }, - "download_count": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "uploader": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "type": "array", + "items": { + "title": "Release Asset", + "description": "Data related to a release.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "browser_download_url": { + "type": "string", + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "description": "The file name of the asset.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { + "anyOf": [ + { + "type": "null" }, - "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" - ] - } - ] - } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" - ] + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" + ] + } }, "examples": { "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", + "value": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } } - } + ] } } } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } + "type": "string" } } } - }, - "302": { - "description": "Found" } }, "x-github": { @@ -665167,19 +677897,25 @@ "enabledForGitHubApps": true, "category": "releases", "subcategory": "assets" - } - }, - "patch": { - "summary": "Update a release asset", - "description": "Users with push access to the repository can edit a release asset.", + } + }, + "post": { + "summary": "Upload a release asset", + "description": "This endpoint makes use of a [Hypermedia relation](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia) to determine which URL to access. The endpoint you call to upload release assets is specific to your release. Use the `upload_url` returned in\nthe response of the [Create a release endpoint](https://docs.github.com/rest/releases/releases#create-a-release) to upload a release asset.\n\nYou need to use an HTTP client which supports [SNI](http://en.wikipedia.org/wiki/Server_Name_Indication) to make calls to this endpoint.\n\nMost libraries will set the required `Content-Length` header automatically. Use the required `Content-Type` header to provide the media type of the asset. For a list of media types, see [Media Types](https://www.iana.org/assignments/media-types/media-types.xhtml). For example: \n\n`application/zip`\n\nGitHub expects the asset data in its raw binary form, rather than JSON. You will send the raw binary content of the asset as the request body. Everything else about the endpoint is the same as the rest of the API. For example,\nyou'll still need to pass your authentication to be able to upload an asset.\n\nWhen an upstream failure occurs, you will receive a `502 Bad Gateway` status. This may leave an empty asset with a state of `starter`. It can be safely deleted.\n\n**Notes:**\n* GitHub renames asset filenames that have special characters, non-alphanumeric characters, and leading or trailing periods. The \"[List release assets](https://docs.github.com/rest/releases/assets#list-release-assets)\"\nendpoint lists the renamed filenames. For more information and help, contact [GitHub Support](https://support.github.com/contact?tags=dotcom-rest-api).\n* To find the `release_id` query the [`GET /repos/{owner}/{repo}/releases/latest` endpoint](https://docs.github.com/rest/releases/releases#get-the-latest-release). \n* If you upload an asset with the same filename as another uploaded asset, you'll receive an error and must delete the old file before you can re-upload the new asset.", "tags": [ "repos" ], - "operationId": "repos/update-release-asset", + "operationId": "repos/upload-release-asset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/assets#update-a-release-asset" + "url": "https://docs.github.com/rest/releases/assets#upload-a-release-asset" }, + "servers": [ + { + "url": "https://uploads.github.com", + "description": "The URL origin (protocol + host name + port) is included in `upload_url` returned in the response of the \"Create a release\" endpoint" + } + ], "parameters": [ { "name": "owner", @@ -665200,52 +677936,50 @@ } }, { - "name": "asset_id", - "description": "The unique identifier of the asset.", + "name": "release_id", + "description": "The unique identifier of the release.", "in": "path", "required": true, "schema": { "type": "integer" } + }, + { + "name": "name", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "label", + "in": "query", + "schema": { + "type": "string" + } } ], "requestBody": { "required": false, "content": { - "application/json": { + "application/octet-stream": { "schema": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The file name of the asset." - }, - "label": { - "type": "string", - "description": "An alternate short description of the asset. Used in place of the filename." - }, - "state": { - "type": "string", - "examples": [ - "\"uploaded\"" - ] - } - } + "type": "string", + "format": "binary", + "description": "The raw file data" }, "examples": { "default": { - "value": { - "name": "foo-1.0.0-osx.zip", - "label": "Mac binary" - } + "value": "@example.zip" } } } } }, "responses": { - "200": { - "description": "Response", + "201": { + "description": "Response for successful upload", "content": { "application/json": { "schema": { @@ -665505,7 +678239,7 @@ ] }, "examples": { - "default": { + "response-for-successful-upload": { "value": { "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", @@ -665545,6 +678279,9 @@ } } } + }, + "422": { + "description": "Response if you upload an asset with the same filename as another uploaded asset" } }, "x-github": { @@ -665553,17 +678290,19 @@ "category": "releases", "subcategory": "assets" } - }, - "delete": { - "summary": "Delete a release asset", - "description": "", + } + }, + "/repos/{owner}/{repo}/releases/{release_id}/reactions": { + "get": { + "summary": "List reactions for a release", + "description": "List the reactions to a [release](https://docs.github.com/rest/releases/releases#get-a-release).", "tags": [ - "repos" + "reactions" ], - "operationId": "repos/delete-release-asset", + "operationId": "reactions/list-for-release", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/assets#delete-a-release-asset" + "url": "https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-release" }, "parameters": [ { @@ -665585,229 +678324,47 @@ } }, { - "name": "asset_id", - "description": "The unique identifier of the asset.", + "name": "release_id", + "description": "The unique identifier of the release.", "in": "path", "required": true, "schema": { "type": "integer" } - } - ], - "responses": { - "204": { - "description": "Response" - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "assets" - } - } - }, - "/repos/{owner}/{repo}/releases/generate-notes": { - "post": { - "summary": "Generate release notes content for a release", - "description": "Generate a name and body describing a [release](https://docs.github.com/rest/releases/releases#get-a-release). The body content will be markdown formatted and contain information like the changes since last release and users who contributed. The generated release notes are not saved anywhere. They are intended to be generated and used when creating a new release.", - "tags": [ - "repos" - ], - "operationId": "repos/generate-release-notes", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#generate-release-notes-content-for-a-release" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } }, { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, + "name": "content", + "description": "Returns a single [reaction type](https://docs.github.com/rest/reactions/reactions#about-reactions). Omit this parameter to list all reactions to a release.", + "in": "query", + "required": false, "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "tag_name": { - "type": "string", - "description": "The tag name for the release. This can be an existing tag or a new one." - }, - "target_commitish": { - "type": "string", - "description": "Specifies the commitish value that will be the target for the release's tag. Required if the supplied tag_name does not reference an existing tag. Ignored if the tag_name already exists." - }, - "previous_tag_name": { - "type": "string", - "description": "The name of the previous tag to use as the starting point for the release notes. Use to manually specify the range for the set of changes considered as part this release." - }, - "configuration_file_path": { - "type": "string", - "description": "Specifies a path to a file in the repository containing configuration settings used for generating the release notes. If unspecified, the configuration file located in the repository at '.github/release.yml' or '.github/release.yaml' will be used. If that is not present, the default configuration will be used." - } - }, - "required": [ - "tag_name" - ] - }, - "examples": { - "default": { - "value": { - "tag_name": "v1.0.0", - "target_commitish": "main", - "previous_tag_name": "v0.9.2", - "configuration_file_path": ".github/custom_release_config.yml" - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Name and body of generated release notes", - "content": { - "application/json": { - "schema": { - "title": "Generated Release Notes Content", - "description": "Generated name and body describing a release", - "type": "object", - "properties": { - "name": { - "description": "The generated name of the release", - "type": "string", - "examples": [ - "Release v1.0.0 is now available!" - ] - }, - "body": { - "description": "The generated body describing the contents of the release supporting markdown formatting", - "type": "string" - } - }, - "required": [ - "name", - "body" - ] - }, - "examples": { - "default": { - "value": { - "name": "Release v1.0.0 is now available!", - "body": "##Changes in Release v1.0.0 ... ##Contributors @monalisa" - } - } - } - } + "type": "string", + "enum": [ + "+1", + "laugh", + "heart", + "hooray", + "rocket", + "eyes" + ] } }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" - } - } - }, - "/repos/{owner}/{repo}/releases/latest": { - "get": { - "summary": "Get the latest release", - "description": "View the latest published full release for the repository.\n\nThe latest release is the most recent non-prerelease, non-draft release, sorted by the `created_at` attribute. The `created_at` attribute is the date of the commit used for the release, and not the date when the release was drafted or published.", - "tags": [ - "repos" - ], - "operationId": "repos/get-latest-release", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#get-the-latest-release" - }, - "parameters": [ { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", "schema": { - "type": "string" + "type": "integer", + "default": 30 } }, { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", "schema": { - "type": "string" + "type": "integer", + "default": 1 } } ], @@ -665817,703 +678374,274 @@ "content": { "application/json": { "schema": { - "title": "Release", - "description": "A release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri" - }, - "assets_url": { - "type": "string", - "format": "uri" - }, - "upload_url": { - "type": "string" - }, - "tarball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "zipball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "tag_name": { - "description": "The name of the tag.", - "type": "string", - "examples": [ - "v1.0.0" - ] - }, - "target_commitish": { - "description": "Specifies the commitish value that determines where the Git tag is created from.", - "type": "string", - "examples": [ - "master" - ] - }, - "name": { - "type": [ - "string", - "null" - ] - }, - "body": { - "type": [ - "string", - "null" - ] - }, - "draft": { - "description": "true to create a draft (unpublished) release, false to create a published one.", - "type": "boolean", - "examples": [ - false - ] - }, - "prerelease": { - "description": "Whether to identify the release as a prerelease or a full release.", - "type": "boolean", - "examples": [ - false - ] - }, - "immutable": { - "description": "Whether or not the release is immutable.", - "type": "boolean", - "examples": [ - false - ] - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "author": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "type": "array", + "items": { + "title": "Reaction", + "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", + "type": "object", + "properties": { + "id": { + "type": "integer", + "examples": [ + 1 + ] }, - "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" - ] - }, - "assets": { - "type": "array", - "items": { - "title": "Release Asset", - "description": "Data related to a release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "digest": { - "type": [ - "string", - "null" - ] - }, - "download_count": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" + "node_id": { + "type": "string", + "examples": [ + "MDg6UmVhY3Rpb24x" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" }, - "uploader": { - "anyOf": [ - { - "type": "null" + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - ] - } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" + }, + "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" + ] + } + ] + }, + "content": { + "description": "The reaction to use", + "type": "string", + "enum": [ + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "rocket", + "eyes" + ], + "examples": [ + "heart" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2016-05-20T20:09:31Z" ] } }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "mentions_count": { - "type": "integer" - }, - "discussion_url": { - "description": "The URL of the release discussion.", - "type": "string", - "format": "uri" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - } - }, - "required": [ - "assets_url", - "upload_url", - "tarball_url", - "zipball_url", - "created_at", - "published_at", - "draft", - "id", - "node_id", - "author", - "html_url", - "name", - "prerelease", - "tag_name", - "target_commitish", - "assets", - "url" - ] + "required": [ + "id", + "node_id", + "user", + "content", + "created_at" + ] + } }, "examples": { "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", - "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", - "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", - "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", - "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", - "id": 1, - "node_id": "MDc6UmVsZWFzZTE=", - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false, - "immutable": false, - "created_at": "2013-02-27T19:35:32Z", - "published_at": "2013-02-27T19:35:32Z", - "author": { - "login": "octocat", + "value": [ + { "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "assets": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "node_id": "MDg6UmVhY3Rpb24x", + "user": { + "login": "octocat", "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } - } - ] - } + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "content": "heart", + "created_at": "2016-05-20T20:09:31Z" + } + ] } } } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } } }, "404": { @@ -666546,22 +678674,20 @@ "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" + "category": "reactions", + "subcategory": "reactions" } - } - }, - "/repos/{owner}/{repo}/releases/tags/{tag}": { - "get": { - "summary": "Get a release by tag name", - "description": "Get a published release with the specified tag.", + }, + "post": { + "summary": "Create reaction for a release", + "description": "Create a reaction to a [release](https://docs.github.com/rest/releases/releases#get-a-release). A response with a `Status: 200 OK` means that you already added the reaction type to this release.", "tags": [ - "repos" + "reactions" ], - "operationId": "repos/get-release-by-tag", + "operationId": "reactions/create-for-release", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#get-a-release-by-tag-name" + "url": "https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-release" }, "parameters": [ { @@ -666583,1523 +678709,2400 @@ } }, { - "name": "tag", - "description": "tag parameter", + "name": "release_id", + "description": "The unique identifier of the release.", "in": "path", "required": true, "schema": { - "type": "string" - }, - "x-multi-segment": true + "type": "integer" + } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "content": { + "type": "string", + "description": "The [reaction type](https://docs.github.com/rest/reactions/reactions#about-reactions) to add to the release.", + "enum": [ + "+1", + "laugh", + "heart", + "hooray", + "rocket", + "eyes" + ] + } + }, + "required": [ + "content" + ] + }, + "examples": { + "default": { + "value": { + "content": "heart" + } + } + } + } + } + }, "responses": { "200": { - "description": "Response", + "description": "Reaction exists", "content": { "application/json": { "schema": { - "title": "Release", - "description": "A release.", + "title": "Reaction", + "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", "type": "object", "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri" - }, - "assets_url": { - "type": "string", - "format": "uri" - }, - "upload_url": { - "type": "string" - }, - "tarball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "zipball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, "id": { - "type": "integer" + "type": "integer", + "examples": [ + 1 + ] }, "node_id": { - "type": "string" - }, - "tag_name": { - "description": "The name of the tag.", "type": "string", "examples": [ - "v1.0.0" + "MDg6UmVhY3Rpb24x" ] }, - "target_commitish": { - "description": "Specifies the commitish value that determines where the Git tag is created from.", + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "content": { + "description": "The reaction to use", "type": "string", + "enum": [ + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "rocket", + "eyes" + ], "examples": [ - "master" + "heart" ] }, - "name": { - "type": [ - "string", - "null" + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2016-05-20T20:09:31Z" ] - }, - "body": { - "type": [ - "string", - "null" + } + }, + "required": [ + "id", + "node_id", + "user", + "content", + "created_at" + ] + }, + "examples": { + "default": { + "value": { + "id": 1, + "node_id": "MDg6UmVhY3Rpb24x", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "content": "heart", + "created_at": "2016-05-20T20:09:31Z" + } + } + } + } + } + }, + "201": { + "description": "Reaction created", + "content": { + "application/json": { + "schema": { + "title": "Reaction", + "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", + "type": "object", + "properties": { + "id": { + "type": "integer", + "examples": [ + 1 ] }, - "draft": { - "description": "true to create a draft (unpublished) release, false to create a published one.", - "type": "boolean", + "node_id": { + "type": "string", "examples": [ - false + "MDg6UmVhY3Rpb24x" ] }, - "prerelease": { - "description": "Whether to identify the release as a prerelease or a full release.", - "type": "boolean", - "examples": [ - false + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } ] }, - "immutable": { - "description": "Whether or not the release is immutable.", - "type": "boolean", + "content": { + "description": "The reaction to use", + "type": "string", + "enum": [ + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "rocket", + "eyes" + ], "examples": [ - false + "heart" ] }, "created_at": { "type": "string", - "format": "date-time" - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "author": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" + "format": "date-time", + "examples": [ + "2016-05-20T20:09:31Z" ] + } + }, + "required": [ + "id", + "node_id", + "user", + "content", + "created_at" + ] + }, + "examples": { + "default": { + "value": { + "id": 1, + "node_id": "MDg6UmVhY3Rpb24x", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "content": "heart", + "created_at": "2016-05-20T20:09:31Z" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" }, - "assets": { + "documentation_url": { + "type": "string" + }, + "errors": { "type": "array", "items": { - "title": "Release Asset", - "description": "Data related to a release.", "type": "object", + "required": [ + "code" + ], "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { + "resource": { "type": "string" }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] + "field": { + "type": "string" }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] + "message": { + "type": "string" }, - "content_type": { + "code": { "type": "string" }, - "size": { + "index": { "type": "integer" }, - "digest": { - "type": [ - "string", - "null" + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } ] + } + } + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "reactions", + "subcategory": "reactions" + } + } + }, + "/repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}": { + "delete": { + "summary": "Delete a release reaction", + "description": "> [!NOTE]\n> You can also specify a repository by `repository_id` using the route `DELETE delete /repositories/:repository_id/releases/:release_id/reactions/:reaction_id`.\n\nDelete a reaction to a [release](https://docs.github.com/rest/releases/releases#get-a-release).", + "tags": [ + "reactions" + ], + "operationId": "reactions/delete-for-release", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reactions/reactions#delete-a-release-reaction" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "release_id", + "description": "The unique identifier of the release.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "reaction_id", + "description": "The unique identifier of the reaction.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "Response" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "reactions", + "subcategory": "reactions" + } + } + }, + "/repos/{owner}/{repo}/rules/branches/{branch}": { + "get": { + "summary": "Get rules for a branch", + "description": "Returns all active rules that apply to the specified branch. The branch does not need to exist; rules that would apply\nto a branch with that name will be returned. All active rules that apply will be returned, regardless of the level\nat which they are configured (e.g. repository or organization). Rules in rulesets with \"evaluate\" or \"disabled\"\nenforcement statuses are not returned.", + "tags": [ + "repos" + ], + "operationId": "repos/get-branch-rules", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/rules#get-rules-for-a-branch" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "description": "The name of the branch. Cannot contain wildcard characters. To use wildcard characters in branch names, use [the GraphQL API](https://docs.github.com/graphql).", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "x-multi-segment": true + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule with ruleset details.", + "oneOf": [ + { + "allOf": [ + { + "title": "creation", + "description": "Only allow users with bypass permission to create matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "creation" + ] + } + } }, - "download_count": { - "type": "integer" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "update", + "description": "Only allow users with bypass permission to update matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "update" + ] + }, + "parameters": { + "type": "object", + "properties": { + "update_allows_fetch_and_merge": { + "type": "boolean", + "description": "Branch can pull changes from its upstream repository" + } + }, + "required": [ + "update_allows_fetch_and_merge" + ] + } + } }, - "created_at": { - "type": "string", - "format": "date-time" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "deletion", + "description": "Only allow users with bypass permissions to delete matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "deletion" + ] + } + } }, - "updated_at": { - "type": "string", - "format": "date-time" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "required_linear_history", + "description": "Prevent merge commits from being pushed to matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_linear_history" + ] + } + } }, - "uploader": { - "anyOf": [ - { - "type": "null" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] }, - { - "title": "Simple User", - "description": "A GitHub user.", + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "merge_queue", + "description": "Merges must be performed via a merge queue.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "merge_queue" + ] + }, + "parameters": { "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] + "check_response_timeout_minutes": { + "type": "integer", + "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", + "minimum": 1, + "maximum": 360 }, - "email": { - "type": [ - "string", - "null" + "grouping_strategy": { + "type": "string", + "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", + "enum": [ + "ALLGREEN", + "HEADGREEN" ] }, - "login": { + "max_entries_to_build": { + "type": "integer", + "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", + "minimum": 0, + "maximum": 100 + }, + "max_entries_to_merge": { + "type": "integer", + "description": "The maximum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "merge_method": { "type": "string", - "examples": [ - "octocat" + "description": "Method to use when merging changes from queued pull requests.", + "enum": [ + "MERGE", + "SQUASH", + "REBASE" ] }, - "id": { + "min_entries_to_merge": { "type": "integer", - "format": "int64", - "examples": [ - 1 + "description": "The minimum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "min_entries_to_merge_wait_minutes": { + "type": "integer", + "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", + "minimum": 0, + "maximum": 360 + } + }, + "required": [ + "check_response_timeout_minutes", + "grouping_strategy", + "max_entries_to_build", + "max_entries_to_merge", + "merge_method", + "min_entries_to_merge", + "min_entries_to_merge_wait_minutes" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "required_deployments", + "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_deployments" + ] + }, + "parameters": { + "type": "object", + "properties": { + "required_deployment_environments": { + "type": "array", + "description": "The environments that must be successfully deployed to before branches can be merged.", + "items": { + "type": "string" + } + } + }, + "required": [ + "required_deployment_environments" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "required_signatures", + "description": "Commits pushed to matching refs must have verified signatures.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_signatures" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "pull_request", + "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "pull_request" + ] + }, + "parameters": { + "type": "object", + "properties": { + "allowed_merge_methods": { + "type": "array", + "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", + "items": { + "type": "string", + "enum": [ + "merge", + "squash", + "rebase" + ] + } + }, + "dismiss_stale_reviews_on_push": { + "type": "boolean", + "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." + }, + "dismissal_restriction": { + "title": "DismissalRestriction", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "type": "object", + "properties": { + "allowed_actors": { + "type": "array", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "items": { + "title": "Actor", + "description": "An actor allowed to dismiss pull request reviews", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the actor that can dismiss reviews." + }, + "type": { + "type": "string", + "description": "The type of the actor", + "enum": [ + "User", + "Team", + "IntegrationInstallation", + "RepositoryRole" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether to restrict review dismissal to specific actors." + } + }, + "required": [ + "enabled" ] }, - "node_id": { + "require_code_owner_review": { + "type": "boolean", + "description": "Require an approving review in pull requests that modify files that have a designated code owner." + }, + "require_last_push_approval": { + "type": "boolean", + "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + }, + "required_approving_review_count": { + "type": "integer", + "description": "The number of approving reviews that are required before a pull request can be merged.", + "minimum": 0, + "maximum": 10 + }, + "required_review_thread_resolution": { + "type": "boolean", + "description": "All conversations on code must be resolved before a pull request can be merged." + }, + "required_reviewers": { + "type": "array", + "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", + "items": { + "title": "RequiredReviewerConfiguration", + "description": "A reviewing team, and file patterns describing which files they must approve changes to.", + "type": "object", + "properties": { + "file_patterns": { + "type": "array", + "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", + "items": { + "type": "string" + } + }, + "minimum_approvals": { + "type": "integer", + "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." + }, + "reviewer": { + "title": "Reviewer", + "description": "A required reviewing team", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the reviewer which must review changes to matching files." + }, + "type": { + "type": "string", + "description": "The type of the reviewer", + "enum": [ + "Team" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "required": [ + "file_patterns", + "minimum_approvals", + "reviewer" + ] + } + } + }, + "required": [ + "dismiss_stale_reviews_on_push", + "require_code_owner_review", + "require_last_push_approval", + "required_approving_review_count", + "required_review_thread_resolution" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "required_status_checks", + "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_status_checks" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "required_status_checks": { + "type": "array", + "description": "Status checks that are required.", + "items": { + "title": "StatusCheckConfiguration", + "description": "Required status check", + "type": "object", + "properties": { + "context": { + "type": "string", + "description": "The status check context name that must be present on the commit." + }, + "integration_id": { + "type": "integer", + "description": "The optional integration ID that this status check must originate from." + } + }, + "required": [ + "context" + ] + } + }, + "strict_required_status_checks_policy": { + "type": "boolean", + "description": "Whether 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." + } + }, + "required": [ + "required_status_checks", + "strict_required_status_checks_policy" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "non_fast_forward" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_message_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { "type": "string", - "examples": [ - "MDQ6VXNlcjE=" + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" ] }, - "avatar_url": { + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_author_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] + "description": "How this rule appears when configuring it." }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." }, - "html_url": { + "operator": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" ] }, - "followers_url": { + "pattern": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "committer_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] + "description": "How this rule appears when configuring it." }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." }, - "starred_url": { + "operator": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" ] }, - "subscriptions_url": { + "pattern": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "branch_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + "description": "How this rule appears when configuring it." }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." }, - "events_url": { + "operator": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" ] }, - "received_events_url": { + "pattern": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "tag_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { "type": "string", - "examples": [ - "User" - ] + "description": "How this rule appears when configuring it." }, - "site_admin": { - "type": "boolean" + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." }, - "starred_at": { + "operator": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" ] }, - "user_view_type": { + "pattern": { "type": "string", - "examples": [ - "public" - ] + "description": "The pattern to match with." } }, "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" + "operator", + "pattern" ] } - ] + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" ] - } - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "mentions_count": { - "type": "integer" - }, - "discussion_url": { - "description": "The URL of the release discussion.", - "type": "string", - "format": "uri" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - } - }, - "required": [ - "assets_url", - "upload_url", - "tarball_url", - "zipball_url", - "created_at", - "published_at", - "draft", - "id", - "node_id", - "author", - "html_url", - "name", - "prerelease", - "tag_name", - "target_commitish", - "assets", - "url" - ] - }, - "examples": { - "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", - "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", - "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", - "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", - "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", - "id": 1, - "node_id": "MDc6UmVsZWFzZTE=", - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false, - "immutable": false, - "created_at": "2013-02-27T19:35:32Z", - "published_at": "2013-02-27T19:35:32Z", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false }, - "assets": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + { + "allOf": [ + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "workflows" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" + }, + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] + } + } + }, + "required": [ + "workflows" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } } - } - ] - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" - } - } - }, - "/repos/{owner}/{repo}/releases/{release_id}": { - "get": { - "summary": "Get a release", - "description": "Gets a public release with the specified release ID.\n\n> [!NOTE]\n> This returns an `upload_url` key corresponding to the endpoint for uploading release assets. This key is a hypermedia resource. For more information, see \"[Getting started with the REST API](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia).\"", - "tags": [ - "repos" - ], - "operationId": "repos/get-release", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#get-a-release" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "**Note:** This returns an `upload_url` key corresponding to the endpoint for uploading release assets. This key is a hypermedia resource. For more information, see \"[Getting started with the REST API](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia).\"", - "content": { - "application/json": { - "schema": { - "title": "Release", - "description": "A release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri" - }, - "assets_url": { - "type": "string", - "format": "uri" - }, - "upload_url": { - "type": "string" - }, - "tarball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "zipball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "tag_name": { - "description": "The name of the tag.", - "type": "string", - "examples": [ - "v1.0.0" - ] - }, - "target_commitish": { - "description": "Specifies the commitish value that determines where the Git tag is created from.", - "type": "string", - "examples": [ - "master" - ] - }, - "name": { - "type": [ - "string", - "null" - ] - }, - "body": { - "type": [ - "string", - "null" - ] - }, - "draft": { - "description": "true to create a draft (unpublished) release, false to create a published one.", - "type": "boolean", - "examples": [ - false - ] - }, - "prerelease": { - "description": "Whether to identify the release as a prerelease or a full release.", - "type": "boolean", - "examples": [ - false - ] - }, - "immutable": { - "description": "Whether or not the release is immutable.", - "type": "boolean", - "examples": [ - false - ] - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "author": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + ] }, - "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" - ] - }, - "assets": { - "type": "array", - "items": { - "title": "Release Asset", - "description": "Data related to a release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" + { + "allOf": [ + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "code_scanning" + ] + }, + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] + }, + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] + } + } + }, + "required": [ + "code_scanning_tools" + ] + } + } }, - "size": { - "type": "integer" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "copilot_code_review" + ] + }, + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." + }, + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." + } + } + } + } }, - "digest": { - "type": [ - "string", - "null" - ] + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "license_compliance_scanning" + ] + } + } }, - "download_count": { - "type": "integer" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_path_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_paths" + ] + } + } }, - "created_at": { - "type": "string", - "format": "date-time" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_path_length" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } + }, + "required": [ + "max_file_path_length" + ] + } + } }, - "updated_at": { - "type": "string", - "format": "date-time" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_extension_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_extensions" + ] + } + } }, - "uploader": { - "anyOf": [ - { - "type": "null" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] }, - { - "title": "Simple User", - "description": "A GitHub user.", + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_size" + ] + }, + "parameters": { "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { + "max_file_size": { "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 } }, "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" + "max_file_size" ] } - ] + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" ] } - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "mentions_count": { - "type": "integer" - }, - "discussion_url": { - "description": "The URL of the release discussion.", - "type": "string", - "format": "uri" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - } - }, - "required": [ - "assets_url", - "upload_url", - "tarball_url", - "zipball_url", - "created_at", - "published_at", - "draft", - "id", - "node_id", - "author", - "html_url", - "name", - "prerelease", - "tag_name", - "target_commitish", - "assets", - "url" - ] + ] + } }, "examples": { "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", - "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", - "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", - "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", - "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", - "id": 1, - "node_id": "MDc6UmVsZWFzZTE=", - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false, - "immutable": false, - "created_at": "2013-02-27T19:35:32Z", - "published_at": "2013-02-27T19:35:32Z", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "value": [ + { + "type": "commit_message_pattern", + "ruleset_source_type": "Repository", + "ruleset_source": "monalisa/my-repo", + "ruleset_id": 42, + "parameters": { + "operator": "starts_with", + "pattern": "issue" + } }, - "assets": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } + { + "type": "commit_author_email_pattern", + "ruleset_source_type": "Organization", + "ruleset_source": "my-org", + "ruleset_id": 73, + "parameters": { + "operator": "contains", + "pattern": "github" } - ] - } + } + ] } } } } - }, - "401": { - "description": "Unauthorized" } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" + "category": "repos", + "subcategory": "rules" } - }, - "patch": { - "summary": "Update a release", - "description": "Users with push access to the repository can edit a release.\n\n> [!NOTE]\n> If the resolved target commit (the new value of `target_commitish` if you are changing it, otherwise the existing target) adds or modifies any file under `.github/workflows/` relative to the repository's default branch, the authenticating token must be authorized to modify workflows. Otherwise, this endpoint returns `404 Not Found`; some authentication paths surface `403 Resource not accessible by integration` instead.\n\nOAuth app tokens and personal access tokens (classic) need the `workflow` scope when the resolved target commit modifies workflow files. Fine-grained access tokens and GitHub App installation tokens also need the \"Workflows\" repository permission (write). The `GITHUB_TOKEN` available to GitHub Actions cannot be authorized for this; for more information, see \"[Automatic token authentication](https://docs.github.com/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)\".", + } + }, + "/repos/{owner}/{repo}/rulesets": { + "get": { + "summary": "Get all repository rulesets", + "description": "Get all the rulesets for a repository.", "tags": [ "repos" ], - "operationId": "repos/update-release", + "operationId": "repos/get-repo-rulesets", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#update-a-release" + "url": "https://docs.github.com/rest/repos/rules#get-all-repository-rulesets" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "rules" }, "parameters": [ { @@ -668121,784 +681124,1483 @@ } }, { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": false, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "tag_name": { - "type": "string", - "description": "The name of the tag." - }, - "target_commitish": { - "type": "string", - "description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch." - }, - "name": { - "type": "string", - "description": "The name of the release." - }, - "body": { - "type": "string", - "description": "Text describing the contents of the tag." - }, - "draft": { - "type": "boolean", - "description": "`true` makes the release a draft, and `false` publishes the release." - }, - "prerelease": { - "type": "boolean", - "description": "`true` to identify the release as a prerelease, `false` to identify the release as a full release." - }, - "make_latest": { - "type": "string", - "description": "Specifies whether this release should be set as the latest release for the repository. Drafts and prereleases cannot be set as latest. Defaults to `true` for newly published releases. `legacy` specifies that the latest release should be determined based on the release creation date and higher semantic version.", - "enum": [ - "true", - "false", - "legacy" - ], - "default": "true" - }, - "discussion_category_name": { - "type": "string", - "description": "If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository. If there is already a discussion linked to the release, this parameter is ignored. For more information, see \"[Managing categories for discussions in your repository](https://docs.github.com/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository).\"" - } - } - }, - "examples": { - "default": { - "value": { - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Release", - "description": "A release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri" - }, - "assets_url": { - "type": "string", - "format": "uri" - }, - "upload_url": { - "type": "string" - }, - "tarball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "zipball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "tag_name": { - "description": "The name of the tag.", - "type": "string", - "examples": [ - "v1.0.0" - ] - }, - "target_commitish": { - "description": "Specifies the commitish value that determines where the Git tag is created from.", - "type": "string", - "examples": [ - "master" - ] - }, - "name": { - "type": [ - "string", - "null" - ] - }, - "body": { - "type": [ - "string", - "null" - ] - }, - "draft": { - "description": "true to create a draft (unpublished) release, false to create a published one.", - "type": "boolean", - "examples": [ - false - ] - }, - "prerelease": { - "description": "Whether to identify the release as a prerelease or a full release.", - "type": "boolean", - "examples": [ - false - ] - }, - "immutable": { - "description": "Whether or not the release is immutable.", - "type": "boolean", - "examples": [ - false - ] - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "author": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "includes_parents", + "description": "Include rulesets configured at higher levels that apply to this repository", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "targets", + "description": "A comma-separated list of rule targets to filter by.\nIf provided, only rulesets that apply to the specified targets will be returned.\nFor example, `branch,tag,push`.\n", + "in": "query", + "required": false, + "schema": { + "type": "string", + "examples": [ + "branch,tag,push" + ] + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Repository ruleset", + "type": "object", + "description": "A set of rules to apply when specified conditions are met.", + "required": [ + "id", + "name", + "source", + "enforcement" + ], + "properties": { + "id": { + "type": "integer", + "description": "The ID of the ruleset" + }, + "name": { + "type": "string", + "description": "The name of the ruleset" + }, + "target": { + "type": "string", + "description": "The target of the ruleset", + "enum": [ + "branch", + "tag", + "push", + "repository" + ] + }, + "source_type": { + "type": "string", + "description": "The type of the source of the ruleset", + "enum": [ + "Repository", + "Organization", + "Enterprise" + ] + }, + "source": { + "type": "string", + "description": "The name of the source" + }, + "enforcement": { + "type": "string", + "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "enum": [ + "disabled", + "active", + "evaluate" + ] + }, + "bypass_actors": { + "type": "array", + "description": "The actors that can bypass the rules in this ruleset", + "items": { + "title": "Repository Ruleset Bypass Actor", + "type": "object", + "description": "An actor that can bypass rules in a ruleset", + "required": [ + "actor_type" ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "properties": { + "actor_id": { + "type": [ + "integer", + "null" + ], + "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." + }, + "actor_type": { + "type": "string", + "enum": [ + "Integration", + "OrganizationAdmin", + "RepositoryRole", + "Team", + "DeployKey", + "User" + ], + "description": "The type of actor that can bypass a ruleset." + }, + "bypass_mode": { + "type": "string", + "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", + "enum": [ + "always", + "pull_request", + "exempt" + ], + "default": "always" + } + } } }, - "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" - ] - }, - "assets": { - "type": "array", - "items": { - "title": "Release Asset", - "description": "Data related to a release.", + "current_user_can_bypass": { + "type": "string", + "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", + "enum": [ + "always", + "pull_requests_only", + "never", + "exempt" + ] + }, + "node_id": { + "type": "string" + }, + "_links": { "type": "object", "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "The URL of the ruleset" + } + } }, - "digest": { + "html": { "type": [ - "string", + "object", "null" - ] - }, - "download_count": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "uploader": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", + ], + "properties": { + "href": { + "type": "string", + "description": "The html URL of the ruleset" + } + } + } + } + }, + "conditions": { + "anyOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Organization ruleset conditions", + "type": "object", + "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", + "oneOf": [ + { + "type": "object", + "title": "repository_name_and_ref_name", + "description": "Conditions to target repositories by name and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" + { + "title": "Repository ruleset conditions for repository names", + "type": "object", + "description": "Parameters for a repository name condition", + "properties": { + "repository_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + }, + "protected": { + "type": "boolean", + "description": "Whether renaming of target repositories is prevented." + } + } + } + }, + "required": [ + "repository_name" ] + } + ] + }, + { + "type": "object", + "title": "repository_id_and_ref_name", + "description": "Conditions to target repositories by id and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" + { + "title": "Repository ruleset conditions for repository IDs", + "type": "object", + "description": "Parameters for a repository ID condition", + "properties": { + "repository_id": { + "type": "object", + "properties": { + "repository_ids": { + "type": "array", + "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", + "items": { + "type": "integer" + } + } + } + } + }, + "required": [ + "repository_id" ] + } + ] + }, + { + "type": "object", + "title": "repository_property_and_ref_name", + "description": "Conditions to target repositories by property and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" + { + "title": "Repository ruleset conditions for repository properties", + "type": "object", + "description": "Parameters for a repository property condition", + "properties": { + "repository_property": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", + "items": { + "title": "Repository ruleset property targeting definition", + "type": "object", + "description": "Parameters for a targeting a repository property", + "properties": { + "name": { + "type": "string", + "description": "The name of the repository property to target" + }, + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { + "type": "string", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", + "enum": [ + "custom", + "system" + ] + } + }, + "required": [ + "name", + "property_values" + ] + } + }, + "exclude": { + "type": "array", + "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", + "items": { + "title": "Repository ruleset property targeting definition", + "type": "object", + "description": "Parameters for a targeting a repository property", + "properties": { + "name": { + "type": "string", + "description": "The name of the repository property to target" + }, + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { + "type": "string", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", + "enum": [ + "custom", + "system" + ] + } + }, + "required": [ + "name", + "property_values" + ] + } + } + } + } + }, + "required": [ + "repository_property" ] + } + ] + } + ] + } + ], + "type": [ + "null", + "object" + ] + }, + "rules": { + "type": "array", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule.", + "oneOf": [ + { + "title": "creation", + "description": "Only allow users with bypass permission to create matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "creation" + ] + } + } + }, + { + "title": "update", + "description": "Only allow users with bypass permission to update matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "update" + ] + }, + "parameters": { + "type": "object", + "properties": { + "update_allows_fetch_and_merge": { + "type": "boolean", + "description": "Branch can pull changes from its upstream repository" + } }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] + "required": [ + "update_allows_fetch_and_merge" + ] + } + } + }, + { + "title": "deletion", + "description": "Only allow users with bypass permissions to delete matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "deletion" + ] + } + } + }, + { + "title": "required_linear_history", + "description": "Prevent merge commits from being pushed to matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_linear_history" + ] + } + } + }, + { + "title": "merge_queue", + "description": "Merges must be performed via a merge queue.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "merge_queue" + ] + }, + "parameters": { + "type": "object", + "properties": { + "check_response_timeout_minutes": { + "type": "integer", + "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", + "minimum": 1, + "maximum": 360 + }, + "grouping_strategy": { + "type": "string", + "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", + "enum": [ + "ALLGREEN", + "HEADGREEN" + ] + }, + "max_entries_to_build": { + "type": "integer", + "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", + "minimum": 0, + "maximum": 100 + }, + "max_entries_to_merge": { + "type": "integer", + "description": "The maximum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "merge_method": { + "type": "string", + "description": "Method to use when merging changes from queued pull requests.", + "enum": [ + "MERGE", + "SQUASH", + "REBASE" + ] + }, + "min_entries_to_merge": { + "type": "integer", + "description": "The minimum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "min_entries_to_merge_wait_minutes": { + "type": "integer", + "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", + "minimum": 0, + "maximum": 360 + } }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] + "required": [ + "check_response_timeout_minutes", + "grouping_strategy", + "max_entries_to_build", + "max_entries_to_merge", + "merge_method", + "min_entries_to_merge", + "min_entries_to_merge_wait_minutes" + ] + } + } + }, + { + "title": "required_deployments", + "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_deployments" + ] + }, + "parameters": { + "type": "object", + "properties": { + "required_deployment_environments": { + "type": "array", + "description": "The environments that must be successfully deployed to before branches can be merged.", + "items": { + "type": "string" + } + } }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] + "required": [ + "required_deployment_environments" + ] + } + } + }, + { + "title": "required_signatures", + "description": "Commits pushed to matching refs must have verified signatures.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_signatures" + ] + } + } + }, + { + "title": "pull_request", + "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "pull_request" + ] + }, + "parameters": { + "type": "object", + "properties": { + "allowed_merge_methods": { + "type": "array", + "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", + "items": { + "type": "string", + "enum": [ + "merge", + "squash", + "rebase" + ] + } + }, + "dismiss_stale_reviews_on_push": { + "type": "boolean", + "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." + }, + "dismissal_restriction": { + "title": "DismissalRestriction", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "type": "object", + "properties": { + "allowed_actors": { + "type": "array", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "items": { + "title": "Actor", + "description": "An actor allowed to dismiss pull request reviews", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the actor that can dismiss reviews." + }, + "type": { + "type": "string", + "description": "The type of the actor", + "enum": [ + "User", + "Team", + "IntegrationInstallation", + "RepositoryRole" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether to restrict review dismissal to specific actors." + } + }, + "required": [ + "enabled" + ] + }, + "require_code_owner_review": { + "type": "boolean", + "description": "Require an approving review in pull requests that modify files that have a designated code owner." + }, + "require_last_push_approval": { + "type": "boolean", + "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + }, + "required_approving_review_count": { + "type": "integer", + "description": "The number of approving reviews that are required before a pull request can be merged.", + "minimum": 0, + "maximum": 10 + }, + "required_review_thread_resolution": { + "type": "boolean", + "description": "All conversations on code must be resolved before a pull request can be merged." + }, + "required_reviewers": { + "type": "array", + "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", + "items": { + "title": "RequiredReviewerConfiguration", + "description": "A reviewing team, and file patterns describing which files they must approve changes to.", + "type": "object", + "properties": { + "file_patterns": { + "type": "array", + "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", + "items": { + "type": "string" + } + }, + "minimum_approvals": { + "type": "integer", + "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." + }, + "reviewer": { + "title": "Reviewer", + "description": "A required reviewing team", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the reviewer which must review changes to matching files." + }, + "type": { + "type": "string", + "description": "The type of the reviewer", + "enum": [ + "Team" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "required": [ + "file_patterns", + "minimum_approvals", + "reviewer" + ] + } + } }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] + "required": [ + "dismiss_stale_reviews_on_push", + "require_code_owner_review", + "require_last_push_approval", + "required_approving_review_count", + "required_review_thread_resolution" + ] + } + } + }, + { + "title": "required_status_checks", + "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_status_checks" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "required_status_checks": { + "type": "array", + "description": "Status checks that are required.", + "items": { + "title": "StatusCheckConfiguration", + "description": "Required status check", + "type": "object", + "properties": { + "context": { + "type": "string", + "description": "The status check context name that must be present on the commit." + }, + "integration_id": { + "type": "integer", + "description": "The optional integration ID that this status check must originate from." + } + }, + "required": [ + "context" + ] + } + }, + "strict_required_status_checks_policy": { + "type": "boolean", + "description": "Whether 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." + } }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] + "required": [ + "required_status_checks", + "strict_required_status_checks_policy" + ] + } + } + }, + { + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "non_fast_forward" + ] + } + } + }, + { + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_message_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_author_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "committer_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "branch_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "tag_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "workflows" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" + }, + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] + } + } }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "required": [ + "workflows" + ] + } + } + }, + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "code_scanning" + ] + }, + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] + }, + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] + } + } }, - "type": { - "type": "string", - "examples": [ - "User" - ] + "required": [ + "code_scanning_tools" + ] + } + } + }, + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "copilot_code_review" + ] + }, + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." + }, + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." + } + } + } + } + }, + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "license_compliance_scanning" + ] + } + } + }, + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_path_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } }, - "site_admin": { - "type": "boolean" + "required": [ + "restricted_file_paths" + ] + } + } + }, + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_path_length" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "required": [ + "max_file_path_length" + ] + } + } + }, + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_extension_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "required": [ + "restricted_file_extensions" + ] + } + } + }, + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_size" + ] }, - "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" - ] + "parameters": { + "type": "object", + "properties": { + "max_file_size": { + "type": "integer", + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 + } + }, + "required": [ + "max_file_size" + ] + } } - ] - } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" - ] - } - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "mentions_count": { - "type": "integer" - }, - "discussion_url": { - "description": "The URL of the release discussion.", - "type": "string", - "format": "uri" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" + } + ] } }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } } - }, - "required": [ - "assets_url", - "upload_url", - "tarball_url", - "zipball_url", - "created_at", - "published_at", - "draft", - "id", - "node_id", - "author", - "html_url", - "name", - "prerelease", - "tag_name", - "target_commitish", - "assets", - "url" - ] + } }, "examples": { "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", - "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", - "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", - "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", - "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", - "id": 1, - "node_id": "MDc6UmVsZWFzZTE=", - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false, - "immutable": false, - "created_at": "2013-02-27T19:35:32Z", - "published_at": "2013-02-27T19:35:32Z", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "value": [ + { + "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" }, - "assets": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + { + "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" + } + ] } } } } }, "404": { - "description": "Not Found if the discussion category name is invalid", + "description": "Resource not found", "content": { "application/json": { "schema": { @@ -668922,61 +682624,9 @@ } } } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" - } - }, - "delete": { - "summary": "Delete a release", - "description": "Users with push access to the repository can delete a release.", - "tags": [ - "repos" - ], - "operationId": "repos/delete-release", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#delete-a-release" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "204": { - "description": "Response" }, - "404": { - "description": "Resource not found", + "500": { + "description": "Internal Error", "content": { "application/json": { "schema": { @@ -669001,26 +682651,24 @@ } } } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" } - } - }, - "/repos/{owner}/{repo}/releases/{release_id}/assets": { - "get": { - "summary": "List release assets", - "description": "", + }, + "post": { + "summary": "Create a repository ruleset", + "description": "Create a ruleset for a repository.", "tags": [ "repos" ], - "operationId": "repos/list-release-assets", + "operationId": "repos/create-repo-ruleset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/assets#list-release-assets" + "url": "https://docs.github.com/rest/repos/rules#create-a-repository-ruleset" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "rules" }, "parameters": [ { @@ -669040,1106 +682688,2658 @@ "schema": { "type": "string" } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } } ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Release Asset", - "description": "Data related to a release.", + "requestBody": { + "description": "Request body", + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the ruleset." + }, + "target": { + "type": "string", + "description": "The target of the ruleset", + "enum": [ + "branch", + "tag", + "push" + ], + "default": "branch" + }, + "enforcement": { + "type": "string", + "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "enum": [ + "disabled", + "active", + "evaluate" + ] + }, + "bypass_actors": { + "type": "array", + "description": "The actors that can bypass the rules in this ruleset", + "items": { + "title": "Repository Ruleset Bypass Actor", + "type": "object", + "description": "An actor that can bypass rules in a ruleset", + "required": [ + "actor_type" + ], + "properties": { + "actor_id": { + "type": [ + "integer", + "null" + ], + "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." + }, + "actor_type": { + "type": "string", + "enum": [ + "Integration", + "OrganizationAdmin", + "RepositoryRole", + "Team", + "DeployKey", + "User" + ], + "description": "The type of actor that can bypass a ruleset." + }, + "bypass_mode": { + "type": "string", + "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", + "enum": [ + "always", + "pull_request", + "exempt" + ], + "default": "always" + } + } + } + }, + "conditions": { + "title": "Repository ruleset conditions for ref names", "type": "object", + "description": "Parameters for a repository ruleset ref name condition", "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "digest": { - "type": [ - "string", - "null" - ] - }, - "download_count": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "uploader": { - "anyOf": [ - { - "type": "null" + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + "rules": { + "type": "array", + "description": "An array of rules within the ruleset.", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule.", + "oneOf": [ + { + "title": "creation", + "description": "Only allow users with bypass permission to create matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "creation" + ] + } + } + }, + { + "title": "update", + "description": "Only allow users with bypass permission to update matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "update" + ] + }, + "parameters": { + "type": "object", + "properties": { + "update_allows_fetch_and_merge": { + "type": "boolean", + "description": "Branch can pull changes from its upstream repository" + } }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] + "required": [ + "update_allows_fetch_and_merge" + ] + } + } + }, + { + "title": "deletion", + "description": "Only allow users with bypass permissions to delete matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "deletion" + ] + } + } + }, + { + "title": "required_linear_history", + "description": "Prevent merge commits from being pushed to matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_linear_history" + ] + } + } + }, + { + "title": "merge_queue", + "description": "Merges must be performed via a merge queue.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "merge_queue" + ] + }, + "parameters": { + "type": "object", + "properties": { + "check_response_timeout_minutes": { + "type": "integer", + "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", + "minimum": 1, + "maximum": 360 + }, + "grouping_strategy": { + "type": "string", + "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", + "enum": [ + "ALLGREEN", + "HEADGREEN" + ] + }, + "max_entries_to_build": { + "type": "integer", + "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", + "minimum": 0, + "maximum": 100 + }, + "max_entries_to_merge": { + "type": "integer", + "description": "The maximum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "merge_method": { + "type": "string", + "description": "Method to use when merging changes from queued pull requests.", + "enum": [ + "MERGE", + "SQUASH", + "REBASE" + ] + }, + "min_entries_to_merge": { + "type": "integer", + "description": "The minimum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "min_entries_to_merge_wait_minutes": { + "type": "integer", + "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", + "minimum": 0, + "maximum": 360 + } }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] + "required": [ + "check_response_timeout_minutes", + "grouping_strategy", + "max_entries_to_build", + "max_entries_to_merge", + "merge_method", + "min_entries_to_merge", + "min_entries_to_merge_wait_minutes" + ] + } + } + }, + { + "title": "required_deployments", + "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_deployments" + ] + }, + "parameters": { + "type": "object", + "properties": { + "required_deployment_environments": { + "type": "array", + "description": "The environments that must be successfully deployed to before branches can be merged.", + "items": { + "type": "string" + } + } }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] + "required": [ + "required_deployment_environments" + ] + } + } + }, + { + "title": "required_signatures", + "description": "Commits pushed to matching refs must have verified signatures.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_signatures" + ] + } + } + }, + { + "title": "pull_request", + "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "pull_request" + ] + }, + "parameters": { + "type": "object", + "properties": { + "allowed_merge_methods": { + "type": "array", + "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", + "items": { + "type": "string", + "enum": [ + "merge", + "squash", + "rebase" + ] + } + }, + "dismiss_stale_reviews_on_push": { + "type": "boolean", + "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." + }, + "dismissal_restriction": { + "title": "DismissalRestriction", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "type": "object", + "properties": { + "allowed_actors": { + "type": "array", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "items": { + "title": "Actor", + "description": "An actor allowed to dismiss pull request reviews", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the actor that can dismiss reviews." + }, + "type": { + "type": "string", + "description": "The type of the actor", + "enum": [ + "User", + "Team", + "IntegrationInstallation", + "RepositoryRole" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether to restrict review dismissal to specific actors." + } + }, + "required": [ + "enabled" + ] + }, + "require_code_owner_review": { + "type": "boolean", + "description": "Require an approving review in pull requests that modify files that have a designated code owner." + }, + "require_last_push_approval": { + "type": "boolean", + "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + }, + "required_approving_review_count": { + "type": "integer", + "description": "The number of approving reviews that are required before a pull request can be merged.", + "minimum": 0, + "maximum": 10 + }, + "required_review_thread_resolution": { + "type": "boolean", + "description": "All conversations on code must be resolved before a pull request can be merged." + }, + "required_reviewers": { + "type": "array", + "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", + "items": { + "title": "RequiredReviewerConfiguration", + "description": "A reviewing team, and file patterns describing which files they must approve changes to.", + "type": "object", + "properties": { + "file_patterns": { + "type": "array", + "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", + "items": { + "type": "string" + } + }, + "minimum_approvals": { + "type": "integer", + "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." + }, + "reviewer": { + "title": "Reviewer", + "description": "A required reviewing team", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the reviewer which must review changes to matching files." + }, + "type": { + "type": "string", + "description": "The type of the reviewer", + "enum": [ + "Team" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "required": [ + "file_patterns", + "minimum_approvals", + "reviewer" + ] + } + } }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] + "required": [ + "dismiss_stale_reviews_on_push", + "require_code_owner_review", + "require_last_push_approval", + "required_approving_review_count", + "required_review_thread_resolution" + ] + } + } + }, + { + "title": "required_status_checks", + "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_status_checks" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "required_status_checks": { + "type": "array", + "description": "Status checks that are required.", + "items": { + "title": "StatusCheckConfiguration", + "description": "Required status check", + "type": "object", + "properties": { + "context": { + "type": "string", + "description": "The status check context name that must be present on the commit." + }, + "integration_id": { + "type": "integer", + "description": "The optional integration ID that this status check must originate from." + } + }, + "required": [ + "context" + ] + } + }, + "strict_required_status_checks_policy": { + "type": "boolean", + "description": "Whether 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." + } }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] + "required": [ + "required_status_checks", + "strict_required_status_checks_policy" + ] + } + } + }, + { + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "non_fast_forward" + ] + } + } + }, + { + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_message_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_author_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "committer_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "branch_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "tag_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "workflows" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" + }, + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] + } + } }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "required": [ + "workflows" + ] + } + } + }, + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "code_scanning" + ] + }, + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] + }, + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] + } + } }, - "type": { - "type": "string", - "examples": [ - "User" - ] + "required": [ + "code_scanning_tools" + ] + } + } + }, + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "copilot_code_review" + ] + }, + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." + }, + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." + } + } + } + } + }, + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "license_compliance_scanning" + ] + } + } + }, + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_path_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } }, - "site_admin": { - "type": "boolean" + "required": [ + "restricted_file_paths" + ] + } + } + }, + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_path_length" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "required": [ + "max_file_path_length" + ] + } + } + }, + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_extension_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "required": [ + "restricted_file_extensions" + ] + } + } + }, + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_size" + ] }, - "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" - ] + "parameters": { + "type": "object", + "properties": { + "max_file_size": { + "type": "integer", + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 + } + }, + "required": [ + "max_file_size" + ] + } } + } + ] + } + } + }, + "required": [ + "name", + "enforcement" + ] + }, + "examples": { + "default": { + "value": { + "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*" ] } }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" - ] - } - }, - "examples": { - "default": { - "value": [ + "rules": [ { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "type": "commit_author_email_pattern", + "parameters": { + "operator": "contains", + "pattern": "github" } } ] } } } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "assets" - } - }, - "post": { - "summary": "Upload a release asset", - "description": "This endpoint makes use of a [Hypermedia relation](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia) to determine which URL to access. The endpoint you call to upload release assets is specific to your release. Use the `upload_url` returned in\nthe response of the [Create a release endpoint](https://docs.github.com/rest/releases/releases#create-a-release) to upload a release asset.\n\nYou need to use an HTTP client which supports [SNI](http://en.wikipedia.org/wiki/Server_Name_Indication) to make calls to this endpoint.\n\nMost libraries will set the required `Content-Length` header automatically. Use the required `Content-Type` header to provide the media type of the asset. For a list of media types, see [Media Types](https://www.iana.org/assignments/media-types/media-types.xhtml). For example: \n\n`application/zip`\n\nGitHub expects the asset data in its raw binary form, rather than JSON. You will send the raw binary content of the asset as the request body. Everything else about the endpoint is the same as the rest of the API. For example,\nyou'll still need to pass your authentication to be able to upload an asset.\n\nWhen an upstream failure occurs, you will receive a `502 Bad Gateway` status. This may leave an empty asset with a state of `starter`. It can be safely deleted.\n\n**Notes:**\n* GitHub renames asset filenames that have special characters, non-alphanumeric characters, and leading or trailing periods. The \"[List release assets](https://docs.github.com/rest/releases/assets#list-release-assets)\"\nendpoint lists the renamed filenames. For more information and help, contact [GitHub Support](https://support.github.com/contact?tags=dotcom-rest-api).\n* To find the `release_id` query the [`GET /repos/{owner}/{repo}/releases/latest` endpoint](https://docs.github.com/rest/releases/releases#get-the-latest-release). \n* If you upload an asset with the same filename as another uploaded asset, you'll receive an error and must delete the old file before you can re-upload the new asset.", - "tags": [ - "repos" - ], - "operationId": "repos/upload-release-asset", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/assets#upload-a-release-asset" - }, - "servers": [ - { - "url": "https://uploads.github.com", - "description": "The URL origin (protocol + host name + port) is included in `upload_url` returned in the response of the \"Create a release\" endpoint" - } - ], - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "name", - "in": "query", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "label", - "in": "query", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": false, - "content": { - "application/octet-stream": { - "schema": { - "type": "string", - "format": "binary", - "description": "The raw file data" - }, - "examples": { - "default": { - "value": "@example.zip" - } - } } } }, "responses": { "201": { - "description": "Response for successful upload", + "description": "Response", "content": { "application/json": { "schema": { - "title": "Release Asset", - "description": "Data related to a release.", + "title": "Repository ruleset", "type": "object", + "description": "A set of rules to apply when specified conditions are met.", + "required": [ + "id", + "name", + "source", + "enforcement" + ], "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, "id": { - "type": "integer" - }, - "node_id": { - "type": "string" + "type": "integer", + "description": "The ID of the ruleset" }, "name": { - "description": "The file name of the asset.", "type": "string", - "examples": [ - "Team Environment" - ] + "description": "The name of the ruleset" }, - "label": { - "type": [ - "string", - "null" + "target": { + "type": "string", + "description": "The target of the ruleset", + "enum": [ + "branch", + "tag", + "push", + "repository" ] }, - "state": { - "description": "State of the release asset.", + "source_type": { "type": "string", + "description": "The type of the source of the ruleset", "enum": [ - "uploaded", - "open" + "Repository", + "Organization", + "Enterprise" ] }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" + "source": { + "type": "string", + "description": "The name of the source" }, - "digest": { - "type": [ - "string", - "null" + "enforcement": { + "type": "string", + "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "enum": [ + "disabled", + "active", + "evaluate" ] }, - "download_count": { - "type": "integer" + "bypass_actors": { + "type": "array", + "description": "The actors that can bypass the rules in this ruleset", + "items": { + "title": "Repository Ruleset Bypass Actor", + "type": "object", + "description": "An actor that can bypass rules in a ruleset", + "required": [ + "actor_type" + ], + "properties": { + "actor_id": { + "type": [ + "integer", + "null" + ], + "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." + }, + "actor_type": { + "type": "string", + "enum": [ + "Integration", + "OrganizationAdmin", + "RepositoryRole", + "Team", + "DeployKey", + "User" + ], + "description": "The type of actor that can bypass a ruleset." + }, + "bypass_mode": { + "type": "string", + "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", + "enum": [ + "always", + "pull_request", + "exempt" + ], + "default": "always" + } + } + } }, - "created_at": { + "current_user_can_bypass": { "type": "string", - "format": "date-time" + "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", + "enum": [ + "always", + "pull_requests_only", + "never", + "exempt" + ] }, - "updated_at": { - "type": "string", - "format": "date-time" + "node_id": { + "type": "string" }, - "uploader": { + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "The URL of the ruleset" + } + } + }, + "html": { + "type": [ + "object", + "null" + ], + "properties": { + "href": { + "type": "string", + "description": "The html URL of the ruleset" + } + } + } + } + }, + "conditions": { "anyOf": [ { - "type": "null" + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } }, { - "title": "Simple User", - "description": "A GitHub user.", + "title": "Organization ruleset conditions", "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" + "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", + "oneOf": [ + { + "type": "object", + "title": "repository_name_and_ref_name", + "description": "Conditions to target repositories by name and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository names", + "type": "object", + "description": "Parameters for a repository name condition", + "properties": { + "repository_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + }, + "protected": { + "type": "boolean", + "description": "Whether renaming of target repositories is prevented." + } + } + } + }, + "required": [ + "repository_name" + ] + } ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + { + "type": "object", + "title": "repository_id_and_ref_name", + "description": "Conditions to target repositories by id and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository IDs", + "type": "object", + "description": "Parameters for a repository ID condition", + "properties": { + "repository_id": { + "type": "object", + "properties": { + "repository_ids": { + "type": "array", + "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", + "items": { + "type": "integer" + } + } + } + } + }, + "required": [ + "repository_id" + ] + } ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + { + "type": "object", + "title": "repository_property_and_ref_name", + "description": "Conditions to target repositories by property and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository properties", + "type": "object", + "description": "Parameters for a repository property condition", + "properties": { + "repository_property": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", + "items": { + "title": "Repository ruleset property targeting definition", + "type": "object", + "description": "Parameters for a targeting a repository property", + "properties": { + "name": { + "type": "string", + "description": "The name of the repository property to target" + }, + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { + "type": "string", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", + "enum": [ + "custom", + "system" + ] + } + }, + "required": [ + "name", + "property_values" + ] + } + }, + "exclude": { + "type": "array", + "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", + "items": { + "title": "Repository ruleset property targeting definition", + "type": "object", + "description": "Parameters for a targeting a repository property", + "properties": { + "name": { + "type": "string", + "description": "The name of the repository property to target" + }, + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { + "type": "string", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", + "enum": [ + "custom", + "system" + ] + } + }, + "required": [ + "name", + "property_values" + ] + } + } + } + } + }, + "required": [ + "repository_property" + ] + } ] } + ] + } + ], + "type": [ + "null", + "object" + ] + }, + "rules": { + "type": "array", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule.", + "oneOf": [ + { + "title": "creation", + "description": "Only allow users with bypass permission to create matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "creation" + ] + } + } + }, + { + "title": "update", + "description": "Only allow users with bypass permission to update matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "update" + ] + }, + "parameters": { + "type": "object", + "properties": { + "update_allows_fetch_and_merge": { + "type": "boolean", + "description": "Branch can pull changes from its upstream repository" + } + }, + "required": [ + "update_allows_fetch_and_merge" + ] + } + } + }, + { + "title": "deletion", + "description": "Only allow users with bypass permissions to delete matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "deletion" + ] + } + } }, - "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" - ] - } - ] - } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" - ] - }, - "examples": { - "response-for-successful-upload": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } - } - } - } - } - } - }, - "422": { - "description": "Response if you upload an asset with the same filename as another uploaded asset" - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "assets" - } - } - }, - "/repos/{owner}/{repo}/releases/{release_id}/reactions": { - "get": { - "summary": "List reactions for a release", - "description": "List the reactions to a [release](https://docs.github.com/rest/releases/releases#get-a-release).", - "tags": [ - "reactions" - ], - "operationId": "reactions/list-for-release", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-release" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "content", - "description": "Returns a single [reaction type](https://docs.github.com/rest/reactions/reactions#about-reactions). Omit this parameter to list all reactions to a release.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "+1", - "laugh", - "heart", - "hooray", - "rocket", - "eyes" - ] - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Reaction", - "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDg6UmVhY3Rpb24x" - ] - }, - "user": { - "anyOf": [ { - "type": "null" + "title": "required_linear_history", + "description": "Prevent merge commits from being pushed to matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_linear_history" + ] + } + } }, { - "title": "Simple User", - "description": "A GitHub user.", + "title": "merge_queue", + "description": "Merges must be performed via a merge queue.", "type": "object", + "required": [ + "type" + ], "properties": { - "name": { - "type": [ - "string", - "null" + "type": { + "type": "string", + "enum": [ + "merge_queue" ] }, - "email": { - "type": [ - "string", - "null" + "parameters": { + "type": "object", + "properties": { + "check_response_timeout_minutes": { + "type": "integer", + "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", + "minimum": 1, + "maximum": 360 + }, + "grouping_strategy": { + "type": "string", + "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", + "enum": [ + "ALLGREEN", + "HEADGREEN" + ] + }, + "max_entries_to_build": { + "type": "integer", + "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", + "minimum": 0, + "maximum": 100 + }, + "max_entries_to_merge": { + "type": "integer", + "description": "The maximum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "merge_method": { + "type": "string", + "description": "Method to use when merging changes from queued pull requests.", + "enum": [ + "MERGE", + "SQUASH", + "REBASE" + ] + }, + "min_entries_to_merge": { + "type": "integer", + "description": "The minimum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "min_entries_to_merge_wait_minutes": { + "type": "integer", + "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", + "minimum": 0, + "maximum": 360 + } + }, + "required": [ + "check_response_timeout_minutes", + "grouping_strategy", + "max_entries_to_build", + "max_entries_to_merge", + "merge_method", + "min_entries_to_merge", + "min_entries_to_merge_wait_minutes" ] - }, - "login": { + } + } + }, + { + "title": "required_deployments", + "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "octocat" + "enum": [ + "required_deployments" ] }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 + "parameters": { + "type": "object", + "properties": { + "required_deployment_environments": { + "type": "array", + "description": "The environments that must be successfully deployed to before branches can be merged.", + "items": { + "type": "string" + } + } + }, + "required": [ + "required_deployment_environments" ] - }, - "node_id": { + } + } + }, + { + "title": "required_signatures", + "description": "Commits pushed to matching refs must have verified signatures.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "MDQ6VXNlcjE=" + "enum": [ + "required_signatures" ] - }, - "avatar_url": { + } + } + }, + { + "title": "pull_request", + "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "enum": [ + "pull_request" ] }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "parameters": { + "type": "object", + "properties": { + "allowed_merge_methods": { + "type": "array", + "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", + "items": { + "type": "string", + "enum": [ + "merge", + "squash", + "rebase" + ] + } + }, + "dismiss_stale_reviews_on_push": { + "type": "boolean", + "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." + }, + "dismissal_restriction": { + "title": "DismissalRestriction", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "type": "object", + "properties": { + "allowed_actors": { + "type": "array", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "items": { + "title": "Actor", + "description": "An actor allowed to dismiss pull request reviews", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the actor that can dismiss reviews." + }, + "type": { + "type": "string", + "description": "The type of the actor", + "enum": [ + "User", + "Team", + "IntegrationInstallation", + "RepositoryRole" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether to restrict review dismissal to specific actors." + } + }, + "required": [ + "enabled" + ] + }, + "require_code_owner_review": { + "type": "boolean", + "description": "Require an approving review in pull requests that modify files that have a designated code owner." + }, + "require_last_push_approval": { + "type": "boolean", + "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + }, + "required_approving_review_count": { + "type": "integer", + "description": "The number of approving reviews that are required before a pull request can be merged.", + "minimum": 0, + "maximum": 10 + }, + "required_review_thread_resolution": { + "type": "boolean", + "description": "All conversations on code must be resolved before a pull request can be merged." + }, + "required_reviewers": { + "type": "array", + "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", + "items": { + "title": "RequiredReviewerConfiguration", + "description": "A reviewing team, and file patterns describing which files they must approve changes to.", + "type": "object", + "properties": { + "file_patterns": { + "type": "array", + "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", + "items": { + "type": "string" + } + }, + "minimum_approvals": { + "type": "integer", + "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." + }, + "reviewer": { + "title": "Reviewer", + "description": "A required reviewing team", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the reviewer which must review changes to matching files." + }, + "type": { + "type": "string", + "description": "The type of the reviewer", + "enum": [ + "Team" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "required": [ + "file_patterns", + "minimum_approvals", + "reviewer" + ] + } + } + }, + "required": [ + "dismiss_stale_reviews_on_push", + "require_code_owner_review", + "require_last_push_approval", + "required_approving_review_count", + "required_review_thread_resolution" + ] + } + } + }, + { + "title": "required_status_checks", + "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_status_checks" ] }, - "url": { + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "required_status_checks": { + "type": "array", + "description": "Status checks that are required.", + "items": { + "title": "StatusCheckConfiguration", + "description": "Required status check", + "type": "object", + "properties": { + "context": { + "type": "string", + "description": "The status check context name that must be present on the commit." + }, + "integration_id": { + "type": "integer", + "description": "The optional integration ID that this status check must originate from." + } + }, + "required": [ + "context" + ] + } + }, + "strict_required_status_checks_policy": { + "type": "boolean", + "description": "Whether 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." + } + }, + "required": [ + "required_status_checks", + "strict_required_status_checks_policy" + ] + } + } + }, + { + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" + "enum": [ + "non_fast_forward" + ] + } + } + }, + { + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_message_pattern" ] }, - "html_url": { + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" + "enum": [ + "commit_author_email_pattern" ] }, - "followers_url": { + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" + "enum": [ + "committer_email_pattern" ] }, - "following_url": { + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "enum": [ + "branch_name_pattern" ] }, - "gists_url": { + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "enum": [ + "tag_name_pattern" ] }, - "starred_url": { + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "enum": [ + "workflows" ] }, - "subscriptions_url": { + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" + }, + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] + } + } + }, + "required": [ + "workflows" + ] + } + } + }, + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "enum": [ + "code_scanning" ] }, - "organizations_url": { + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] + }, + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] + } + } + }, + "required": [ + "code_scanning_tools" + ] + } + } + }, + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" + "enum": [ + "copilot_code_review" ] }, - "repos_url": { + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." + }, + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." + } + } + } + } + }, + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" + "enum": [ + "license_compliance_scanning" + ] + } + } + }, + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_path_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_paths" ] - }, - "events_url": { + } + } + }, + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "enum": [ + "max_file_path_length" ] }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } + }, + "required": [ + "max_file_path_length" ] - }, + } + } + }, + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { "type": { "type": "string", - "examples": [ - "User" + "enum": [ + "file_extension_restriction" ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_extensions" + ] + } + } + }, + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + "enum": [ + "max_file_size" ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "parameters": { + "type": "object", + "properties": { + "max_file_size": { + "type": "integer", + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 + } + }, + "required": [ + "max_file_size" ] } - }, - "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" - ] + } } ] - }, - "content": { - "description": "The reaction to use", - "type": "string", - "enum": [ - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "rocket", - "eyes" - ], - "examples": [ - "heart" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2016-05-20T20:09:31Z" - ] } }, - "required": [ - "id", - "node_id", - "user", - "content", - "created_at" - ] + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } } }, "examples": { "default": { - "value": [ - { - "id": 1, - "node_id": "MDg6UmVhY3Rpb24x", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "value": { + "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" }, - "content": "heart", - "created_at": "2016-05-20T20:09:31Z" - } - ] + "html": { + "href": "https://github.com/monalisa/my-repo/rules/42" + } + }, + "created_at": "2023-07-15T08:43:03Z", + "updated_at": "2023-08-23T16:29:47Z" + } } } } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { "schema": { - "type": "string" + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } } } } }, - "404": { - "description": "Resource not found", + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, + "500": { + "description": "Internal Error", "content": { "application/json": { "schema": { @@ -670164,24 +685364,20 @@ } } } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "reactions", - "subcategory": "reactions" } - }, - "post": { - "summary": "Create reaction for a release", - "description": "Create a reaction to a [release](https://docs.github.com/rest/releases/releases#get-a-release). A response with a `Status: 200 OK` means that you already added the reaction type to this release.", + } + }, + "/repos/{owner}/{repo}/rulesets/rule-suites": { + "get": { + "summary": "List repository rule suites", + "description": "Lists suites of rule evaluations at the repository level.\nFor more information, see \"[Managing rulesets for a repository](https://docs.github.com/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/managing-rulesets-for-a-repository#viewing-insights-for-rulesets).\"", "tags": [ - "reactions" + "repos" ], - "operationId": "reactions/create-for-release", + "operationId": "repos/get-repo-rule-suites", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-release" + "url": "https://docs.github.com/rest/repos/rule-suites#list-repository-rule-suites" }, "parameters": [ { @@ -670203,586 +685399,227 @@ } }, { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, + "name": "ref", + "description": "The name of the ref. Cannot contain wildcard characters. Optionally prefix with `refs/heads/` to limit to branches or `refs/tags/` to limit to tags. Omit the prefix to search across all refs. When specified, only rule evaluations triggered for this ref will be returned.", + "in": "query", "schema": { - "type": "integer" + "type": "string" + }, + "x-multi-segment": true + }, + { + "name": "time_period", + "description": "The time period to filter by.\n\nFor example, `day` will filter for rule suites that occurred in the past 24 hours, and `week` will filter for rule suites that occurred in the past 7 days (168 hours).", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "hour", + "day", + "week", + "month" + ], + "default": "day" } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "content": { - "type": "string", - "description": "The [reaction type](https://docs.github.com/rest/reactions/reactions#about-reactions) to add to the release.", - "enum": [ - "+1", - "laugh", - "heart", - "hooray", - "rocket", - "eyes" - ] - } - }, - "required": [ - "content" - ] - }, - "examples": { - "default": { - "value": { - "content": "heart" - } - } - } + }, + { + "name": "actor_name", + "description": "The handle for the GitHub user account to filter on. When specified, only rule evaluations triggered by this actor will be returned.", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "rule_suite_result", + "description": "The rule suite results to filter on. When specified, only suites with this result will be returned.", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "pass", + "fail", + "bypass", + "all" + ], + "default": "all" + } + }, + { + "name": "evaluate_status", + "description": "The evaluate status to filter on. When specified, only rule suites resulting from rulesets with the specified evaluate status will be returned.\n - `all` - all rule suites will be returned.\n - `active` - only rule suites resulting from rulesets in active (non-evaluate) mode will be returned.\n - `evaluate` - only rule suites resulting from rulesets in evaluate mode will be returned.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "all", + "active", + "evaluate" + ], + "default": "all" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 } } - }, + ], "responses": { "200": { - "description": "Reaction exists", + "description": "Response", "content": { "application/json": { "schema": { - "title": "Reaction", - "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDg6UmVhY3Rpb24x" - ] - }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "content": { - "description": "The reaction to use", - "type": "string", - "enum": [ - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "rocket", - "eyes" - ], - "examples": [ - "heart" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2016-05-20T20:09:31Z" - ] - } - }, - "required": [ - "id", - "node_id", - "user", - "content", - "created_at" - ] - }, - "examples": { - "default": { - "value": { - "id": 1, - "node_id": "MDg6UmVhY3Rpb24x", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "title": "Rule Suites", + "description": "Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "The unique identifier of the rule insight." }, - "content": "heart", - "created_at": "2016-05-20T20:09:31Z" - } - } - } - } - } - }, - "201": { - "description": "Reaction created", - "content": { - "application/json": { - "schema": { - "title": "Reaction", - "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDg6UmVhY3Rpb24x" - ] - }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "content": { - "description": "The reaction to use", - "type": "string", - "enum": [ - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "rocket", - "eyes" - ], - "examples": [ - "heart" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2016-05-20T20:09:31Z" - ] + "actor_id": { + "type": "integer", + "description": "The number that identifies the user." + }, + "actor_name": { + "type": "string", + "description": "The handle for the GitHub user account." + }, + "before_sha": { + "type": "string", + "description": "The first commit sha before the push evaluation." + }, + "after_sha": { + "type": "string", + "description": "The last commit sha in the push evaluation." + }, + "ref": { + "type": "string", + "description": "The ref name that the evaluation ran on." + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository associated with the rule evaluation." + }, + "repository_name": { + "type": "string", + "description": "The name of the repository without the `.git` extension." + }, + "pushed_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "result": { + "type": "string", + "enum": [ + "pass", + "fail", + "bypass" + ], + "description": "The result of the rule evaluations for rules with the `active` enforcement status." + }, + "evaluation_result": { + "type": "string", + "enum": [ + "pass", + "fail", + "bypass" + ], + "description": "The result of the rule evaluations for rules with the `active` and `evaluate` enforcement statuses, demonstrating whether rules would pass or fail if all rules in the rule suite were `active`." + } } - }, - "required": [ - "id", - "node_id", - "user", - "content", - "created_at" - ] + } }, "examples": { "default": { - "value": { - "id": 1, - "node_id": "MDg6UmVhY3Rpb24x", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "value": [ + { + "id": 21, + "actor_id": 12, + "actor_name": "octocat", + "before_sha": "893f768e172fb1bc9c5d6f3dd48557e45f14e01d", + "after_sha": "dedd88641a362b6b4ea872da4847d6131a164d01", + "ref": "refs/heads/i-see-everything", + "repository_id": 404, + "repository_name": "octo-repo", + "pushed_at": "2023-07-06T08:43:03Z", + "result": "bypass" }, - "content": "heart", - "created_at": "2016-05-20T20:09:31Z" + { + "id": 25, + "actor_id": 11, + "actor_name": "not-octocat", + "before_sha": "48994e4e01ccc943624c6231f172702b82b233cc", + "after_sha": "ecfd5a1025fa271a33ca5608d089476a2df3c9a1", + "ref": "refs/heads/i-am-everything", + "repository_id": 404, + "repository_name": "octo-repo", + "pushed_at": "2023-07-07T08:43:03Z", + "result": "pass", + "evaluation_result": "fail" + } + ] + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" } } } } } }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", + "500": { + "description": "Internal Error", "content": { "application/json": { "schema": { - "title": "Validation Error", - "description": "Validation Error", + "title": "Basic Error", + "description": "Basic Error", "type": "object", - "required": [ - "message", - "documentation_url" - ], "properties": { "message": { "type": "string" @@ -670790,56 +685627,11 @@ "documentation_url": { "type": "string" }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } + "url": { + "type": "string" + }, + "status": { + "type": "string" } } } @@ -670850,22 +685642,22 @@ "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "reactions", - "subcategory": "reactions" + "category": "repos", + "subcategory": "rule-suites" } } }, - "/repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}": { - "delete": { - "summary": "Delete a release reaction", - "description": "> [!NOTE]\n> You can also specify a repository by `repository_id` using the route `DELETE delete /repositories/:repository_id/releases/:release_id/reactions/:reaction_id`.\n\nDelete a reaction to a [release](https://docs.github.com/rest/releases/releases#get-a-release).", + "/repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}": { + "get": { + "summary": "Get a repository rule suite", + "description": "Gets information about a suite of rule evaluations from within a repository.\nFor more information, see \"[Managing rulesets for a repository](https://docs.github.com/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/managing-rulesets-for-a-repository#viewing-insights-for-rulesets).\"", "tags": [ - "reactions" + "repos" ], - "operationId": "reactions/delete-for-release", + "operationId": "repos/get-repo-rule-suite", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/reactions/reactions#delete-a-release-reaction" + "url": "https://docs.github.com/rest/repos/rule-suites#get-a-repository-rule-suite" }, "parameters": [ { @@ -670887,17 +685679,8 @@ } }, { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "reaction_id", - "description": "The unique identifier of the reaction.", + "name": "rule_suite_id", + "description": "The unique identifier of the rule suite result.\nTo get this ID, you can use [GET /repos/{owner}/{repo}/rulesets/rule-suites](https://docs.github.com/rest/repos/rule-suites#list-repository-rule-suites)\nfor repositories and [GET /orgs/{org}/rulesets/rule-suites](https://docs.github.com/rest/orgs/rule-suites#list-organization-rule-suites)\nfor organizations.", "in": "path", "required": true, "schema": { @@ -670906,29 +685689,273 @@ } ], "responses": { - "204": { - "description": "Response" + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Rule Suite", + "description": "Response", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "The unique identifier of the rule insight." + }, + "actor_id": { + "type": [ + "integer", + "null" + ], + "description": "The number that identifies the user." + }, + "actor_name": { + "type": [ + "string", + "null" + ], + "description": "The handle for the GitHub user account." + }, + "before_sha": { + "type": "string", + "description": "The previous commit SHA of the ref." + }, + "after_sha": { + "type": "string", + "description": "The new commit SHA of the ref." + }, + "ref": { + "type": "string", + "description": "The ref name that the evaluation ran on." + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository associated with the rule evaluation." + }, + "repository_name": { + "type": "string", + "description": "The name of the repository without the `.git` extension." + }, + "pushed_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "result": { + "type": "string", + "enum": [ + "pass", + "fail", + "bypass" + ], + "description": "The result of the rule evaluations for rules with the `active` enforcement status." + }, + "evaluation_result": { + "type": [ + "string", + "null" + ], + "enum": [ + "pass", + "fail", + "bypass", + null + ], + "description": "The result of the rule evaluations for rules with the `active` and `evaluate` enforcement statuses, demonstrating whether rules would pass or fail if all rules in the rule suite were `active`. Null if no rules with `evaluate` enforcement status were run." + }, + "rule_evaluations": { + "type": "array", + "description": "Details on the evaluated rules.", + "items": { + "type": "object", + "properties": { + "rule_source": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of rule source." + }, + "id": { + "type": [ + "integer", + "null" + ], + "description": "The ID of the rule source." + }, + "name": { + "type": [ + "string", + "null" + ], + "description": "The name of the rule source." + } + } + }, + "enforcement": { + "type": "string", + "enum": [ + "active", + "evaluate", + "deleted ruleset" + ], + "description": "The enforcement level of this rule source." + }, + "result": { + "type": "string", + "enum": [ + "pass", + "fail" + ], + "description": "The result of the evaluation of the individual rule." + }, + "rule_type": { + "type": "string", + "description": "The type of rule." + }, + "details": { + "type": [ + "string", + "null" + ], + "description": "The detailed failure message for the rule. Null if the rule passed." + } + } + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 21, + "actor_id": 12, + "actor_name": "octocat", + "before_sha": "893f768e172fb1bc9c5d6f3dd48557e45f14e01d", + "after_sha": "dedd88641a362b6b4ea872da4847d6131a164d01", + "ref": "refs/heads/i-see-everything", + "repository_id": 404, + "repository_name": "octo-repo", + "pushed_at": "2023-07-06T08:43:03Z", + "result": "bypass", + "evaluation_result": "fail", + "rule_evaluations": [ + { + "rule_source": { + "type": "ruleset", + "id": 2, + "name": "Author email must be a GitHub email address" + }, + "enforcement": "active", + "result": "pass", + "rule_type": "commit_author_email_pattern" + }, + { + "rule_source": { + "type": "protected_branch" + }, + "enforcement": "active", + "result": "fail", + "rule_type": "pull_request", + "details": "Changes must be made through a pull request." + }, + { + "rule_source": { + "type": "ruleset", + "id": 3, + "name": "Evaluate commit message pattern" + }, + "enforcement": "evaluate", + "result": "fail", + "rule_type": "commit_message_pattern" + } + ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "reactions", - "subcategory": "reactions" + "category": "repos", + "subcategory": "rule-suites" } } }, - "/repos/{owner}/{repo}/rules/branches/{branch}": { + "/repos/{owner}/{repo}/rulesets/{ruleset_id}": { "get": { - "summary": "Get rules for a branch", - "description": "Returns all active rules that apply to the specified branch. The branch does not need to exist; rules that would apply\nto a branch with that name will be returned. All active rules that apply will be returned, regardless of the level\nat which they are configured (e.g. repository or organization). Rules in rulesets with \"evaluate\" or \"disabled\"\nenforcement statuses are not returned.", + "summary": "Get a repository ruleset", + "description": "Get a ruleset for a repository.\n\n**Note:** To prevent leaking sensitive information, the `bypass_actors` property is only returned if the user\nmaking the API request has write access to the ruleset.", "tags": [ "repos" ], - "operationId": "repos/get-branch-rules", + "operationId": "repos/get-repo-ruleset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#get-rules-for-a-branch" + "url": "https://docs.github.com/rest/repos/rules#get-a-repository-ruleset" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "rules" }, "parameters": [ { @@ -670950,31 +685977,22 @@ } }, { - "name": "branch", - "description": "The name of the branch. Cannot contain wildcard characters. To use wildcard characters in branch names, use [the GraphQL API](https://docs.github.com/graphql).", + "name": "ruleset_id", + "description": "The ID of the ruleset.", "in": "path", "required": true, "schema": { - "type": "string" - }, - "x-multi-segment": true - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 + "type": "integer" } }, { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "name": "includes_parents", + "description": "Include rulesets configured at higher levels that apply to this repository", "in": "query", + "required": false, "schema": { - "type": "integer", - "default": 1 + "type": "boolean", + "default": true } } ], @@ -670984,14 +686002,423 @@ "content": { "application/json": { "schema": { - "type": "array", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule with ruleset details.", - "oneOf": [ - { - "allOf": [ + "title": "Repository ruleset", + "type": "object", + "description": "A set of rules to apply when specified conditions are met.", + "required": [ + "id", + "name", + "source", + "enforcement" + ], + "properties": { + "id": { + "type": "integer", + "description": "The ID of the ruleset" + }, + "name": { + "type": "string", + "description": "The name of the ruleset" + }, + "target": { + "type": "string", + "description": "The target of the ruleset", + "enum": [ + "branch", + "tag", + "push", + "repository" + ] + }, + "source_type": { + "type": "string", + "description": "The type of the source of the ruleset", + "enum": [ + "Repository", + "Organization", + "Enterprise" + ] + }, + "source": { + "type": "string", + "description": "The name of the source" + }, + "enforcement": { + "type": "string", + "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "enum": [ + "disabled", + "active", + "evaluate" + ] + }, + "bypass_actors": { + "type": "array", + "description": "The actors that can bypass the rules in this ruleset", + "items": { + "title": "Repository Ruleset Bypass Actor", + "type": "object", + "description": "An actor that can bypass rules in a ruleset", + "required": [ + "actor_type" + ], + "properties": { + "actor_id": { + "type": [ + "integer", + "null" + ], + "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." + }, + "actor_type": { + "type": "string", + "enum": [ + "Integration", + "OrganizationAdmin", + "RepositoryRole", + "Team", + "DeployKey", + "User" + ], + "description": "The type of actor that can bypass a ruleset." + }, + "bypass_mode": { + "type": "string", + "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", + "enum": [ + "always", + "pull_request", + "exempt" + ], + "default": "always" + } + } + } + }, + "current_user_can_bypass": { + "type": "string", + "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", + "enum": [ + "always", + "pull_requests_only", + "never", + "exempt" + ] + }, + "node_id": { + "type": "string" + }, + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "The URL of the ruleset" + } + } + }, + "html": { + "type": [ + "object", + "null" + ], + "properties": { + "href": { + "type": "string", + "description": "The html URL of the ruleset" + } + } + } + } + }, + "conditions": { + "anyOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Organization ruleset conditions", + "type": "object", + "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", + "oneOf": [ + { + "type": "object", + "title": "repository_name_and_ref_name", + "description": "Conditions to target repositories by name and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository names", + "type": "object", + "description": "Parameters for a repository name condition", + "properties": { + "repository_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + }, + "protected": { + "type": "boolean", + "description": "Whether renaming of target repositories is prevented." + } + } + } + }, + "required": [ + "repository_name" + ] + } + ] + }, + { + "type": "object", + "title": "repository_id_and_ref_name", + "description": "Conditions to target repositories by id and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository IDs", + "type": "object", + "description": "Parameters for a repository ID condition", + "properties": { + "repository_id": { + "type": "object", + "properties": { + "repository_ids": { + "type": "array", + "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", + "items": { + "type": "integer" + } + } + } + } + }, + "required": [ + "repository_id" + ] + } + ] + }, + { + "type": "object", + "title": "repository_property_and_ref_name", + "description": "Conditions to target repositories by property and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository properties", + "type": "object", + "description": "Parameters for a repository property condition", + "properties": { + "repository_property": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", + "items": { + "title": "Repository ruleset property targeting definition", + "type": "object", + "description": "Parameters for a targeting a repository property", + "properties": { + "name": { + "type": "string", + "description": "The name of the repository property to target" + }, + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { + "type": "string", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", + "enum": [ + "custom", + "system" + ] + } + }, + "required": [ + "name", + "property_values" + ] + } + }, + "exclude": { + "type": "array", + "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", + "items": { + "title": "Repository ruleset property targeting definition", + "type": "object", + "description": "Parameters for a targeting a repository property", + "properties": { + "name": { + "type": "string", + "description": "The name of the repository property to target" + }, + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { + "type": "string", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", + "enum": [ + "custom", + "system" + ] + } + }, + "required": [ + "name", + "property_values" + ] + } + } + } + } + }, + "required": [ + "repository_property" + ] + } + ] + } + ] + } + ], + "type": [ + "null", + "object" + ] + }, + "rules": { + "type": "array", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule.", + "oneOf": [ { "title": "creation", "description": "Only allow users with bypass permission to create matching refs.", @@ -671008,32 +686435,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "update", "description": "Only allow users with bypass permission to update matching refs.", @@ -671062,32 +686463,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "deletion", "description": "Only allow users with bypass permissions to delete matching refs.", @@ -671104,32 +686479,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "required_linear_history", "description": "Prevent merge commits from being pushed to matching refs.", @@ -671146,32 +686495,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "merge_queue", "description": "Merges must be performed via a merge queue.", @@ -671244,37 +686567,11 @@ "max_entries_to_merge", "merge_method", "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." + "min_entries_to_merge_wait_minutes" + ] } } - } - ] - }, - { - "allOf": [ + }, { "title": "required_deployments", "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", @@ -671306,32 +686603,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "required_signatures", "description": "Commits pushed to matching refs must have verified signatures.", @@ -671348,32 +686619,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "pull_request", "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", @@ -671528,32 +686773,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "required_status_checks", "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", @@ -671610,34 +686829,24 @@ } }, { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], "properties": { - "ruleset_source_type": { + "type": { "type": "string", - "description": "The type of source for the ruleset that includes this rule.", "enum": [ - "Repository", - "Organization" + "non_fast_forward" ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." } } - } - ] - }, - { - "allOf": [ + }, { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", "type": "object", "required": [ "type" @@ -671646,40 +686855,92 @@ "type": { "type": "string", "enum": [ - "non_fast_forward" + "commit_message_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" ] } } }, { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", + "type": "object", + "required": [ + "type" + ], "properties": { - "ruleset_source_type": { + "type": { "type": "string", - "description": "The type of source for the ruleset that includes this rule.", "enum": [ - "Repository", - "Organization" + "commit_author_email_pattern" ] }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] } } - } - ] - }, - { - "allOf": [ + }, { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", "type": "object", "required": [ "type" @@ -671688,7 +686949,7 @@ "type": { "type": "string", "enum": [ - "commit_message_pattern" + "committer_email_pattern" ] }, "parameters": { @@ -671725,34 +686986,55 @@ } }, { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], "properties": { - "ruleset_source_type": { + "type": { "type": "string", - "description": "The type of source for the ruleset that includes this rule.", "enum": [ - "Repository", - "Organization" + "branch_name_pattern" ] }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] } } - } - ] - }, - { - "allOf": [ + }, { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", "type": "object", "required": [ "type" @@ -671761,7 +687043,7 @@ "type": { "type": "string", "enum": [ - "commit_author_email_pattern" + "tag_name_pattern" ] }, "parameters": { @@ -671789,777 +687071,1561 @@ "type": "string", "description": "The pattern to match with." } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "workflows" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" + }, + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] + } + } + }, + "required": [ + "workflows" + ] + } + } + }, + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "code_scanning" + ] + }, + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] + }, + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] + } + } + }, + "required": [ + "code_scanning_tools" + ] + } + } + }, + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "copilot_code_review" + ] + }, + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." + }, + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." + } + } + } + } + }, + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "license_compliance_scanning" + ] + } + } + }, + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_path_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_paths" + ] + } + } + }, + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_path_length" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } + }, + "required": [ + "max_file_path_length" + ] + } + } + }, + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_extension_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_extensions" + ] + } + } + }, + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_size" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_size": { + "type": "integer", + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 + } + }, + "required": [ + "max_file_size" + ] + } + } + } + ] + } + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + } + }, + "examples": { + "default": { + "value": { + "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" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + } + }, + "put": { + "summary": "Update a repository ruleset", + "description": "Update a ruleset for a repository.", + "tags": [ + "repos" + ], + "operationId": "repos/update-repo-ruleset", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/rules#update-a-repository-ruleset" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "rules" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleset_id", + "description": "The ID of the ruleset.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "description": "Request body", + "required": false, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the ruleset." + }, + "target": { + "type": "string", + "description": "The target of the ruleset", + "enum": [ + "branch", + "tag", + "push" + ] + }, + "enforcement": { + "type": "string", + "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "enum": [ + "disabled", + "active", + "evaluate" + ] + }, + "bypass_actors": { + "type": "array", + "description": "The actors that can bypass the rules in this ruleset", + "items": { + "title": "Repository Ruleset Bypass Actor", + "type": "object", + "description": "An actor that can bypass rules in a ruleset", + "required": [ + "actor_type" + ], + "properties": { + "actor_id": { + "type": [ + "integer", + "null" + ], + "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." + }, + "actor_type": { + "type": "string", + "enum": [ + "Integration", + "OrganizationAdmin", + "RepositoryRole", + "Team", + "DeployKey", + "User" + ], + "description": "The type of actor that can bypass a ruleset." + }, + "bypass_mode": { + "type": "string", + "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", + "enum": [ + "always", + "pull_request", + "exempt" + ], + "default": "always" + } + } + } + }, + "conditions": { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + "rules": { + "description": "An array of rules within the ruleset.", + "type": "array", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule.", + "oneOf": [ + { + "title": "creation", + "description": "Only allow users with bypass permission to create matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "creation" + ] + } + } + }, + { + "title": "update", + "description": "Only allow users with bypass permission to update matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "update" + ] + }, + "parameters": { + "type": "object", + "properties": { + "update_allows_fetch_and_merge": { + "type": "boolean", + "description": "Branch can pull changes from its upstream repository" + } + }, + "required": [ + "update_allows_fetch_and_merge" + ] + } + } + }, + { + "title": "deletion", + "description": "Only allow users with bypass permissions to delete matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "deletion" + ] + } + } + }, + { + "title": "required_linear_history", + "description": "Prevent merge commits from being pushed to matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_linear_history" + ] + } + } + }, + { + "title": "merge_queue", + "description": "Merges must be performed via a merge queue.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "merge_queue" + ] + }, + "parameters": { + "type": "object", + "properties": { + "check_response_timeout_minutes": { + "type": "integer", + "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", + "minimum": 1, + "maximum": 360 + }, + "grouping_strategy": { + "type": "string", + "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", + "enum": [ + "ALLGREEN", + "HEADGREEN" + ] + }, + "max_entries_to_build": { + "type": "integer", + "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", + "minimum": 0, + "maximum": 100 + }, + "max_entries_to_merge": { + "type": "integer", + "description": "The maximum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "merge_method": { + "type": "string", + "description": "Method to use when merging changes from queued pull requests.", + "enum": [ + "MERGE", + "SQUASH", + "REBASE" + ] + }, + "min_entries_to_merge": { + "type": "integer", + "description": "The minimum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "min_entries_to_merge_wait_minutes": { + "type": "integer", + "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", + "minimum": 0, + "maximum": 360 + } + }, + "required": [ + "check_response_timeout_minutes", + "grouping_strategy", + "max_entries_to_build", + "max_entries_to_merge", + "merge_method", + "min_entries_to_merge", + "min_entries_to_merge_wait_minutes" + ] + } + } + }, + { + "title": "required_deployments", + "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_deployments" + ] + }, + "parameters": { + "type": "object", + "properties": { + "required_deployment_environments": { + "type": "array", + "description": "The environments that must be successfully deployed to before branches can be merged.", + "items": { + "type": "string" + } + } }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + "required": [ + "required_deployment_environments" + ] } } - ] - }, - { - "allOf": [ - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "committer_email_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + }, + { + "title": "required_signatures", + "description": "Commits pushed to matching refs must have verified signatures.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_signatures" + ] + } + } + }, + { + "title": "pull_request", + "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "pull_request" + ] + }, + "parameters": { + "type": "object", + "properties": { + "allowed_merge_methods": { + "type": "array", + "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", + "items": { "type": "string", - "description": "The operator to use for matching.", "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "merge", + "squash", + "rebase" ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." } }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "branch_name_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." + "dismiss_stale_reviews_on_push": { + "type": "boolean", + "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." + }, + "dismissal_restriction": { + "title": "DismissalRestriction", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "type": "object", + "properties": { + "allowed_actors": { + "type": "array", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "items": { + "title": "Actor", + "description": "An actor allowed to dismiss pull request reviews", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the actor that can dismiss reviews." + }, + "type": { + "type": "string", + "description": "The type of the actor", + "enum": [ + "User", + "Team", + "IntegrationInstallation", + "RepositoryRole" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether to restrict review dismissal to specific actors." + } }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "required": [ + "enabled" + ] + }, + "require_code_owner_review": { + "type": "boolean", + "description": "Require an approving review in pull requests that modify files that have a designated code owner." + }, + "require_last_push_approval": { + "type": "boolean", + "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + }, + "required_approving_review_count": { + "type": "integer", + "description": "The number of approving reviews that are required before a pull request can be merged.", + "minimum": 0, + "maximum": 10 + }, + "required_review_thread_resolution": { + "type": "boolean", + "description": "All conversations on code must be resolved before a pull request can be merged." + }, + "required_reviewers": { + "type": "array", + "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", + "items": { + "title": "RequiredReviewerConfiguration", + "description": "A reviewing team, and file patterns describing which files they must approve changes to.", + "type": "object", + "properties": { + "file_patterns": { + "type": "array", + "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", + "items": { + "type": "string" + } + }, + "minimum_approvals": { + "type": "integer", + "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." + }, + "reviewer": { + "title": "Reviewer", + "description": "A required reviewing team", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the reviewer which must review changes to matching files." + }, + "type": { + "type": "string", + "description": "The type of the reviewer", + "enum": [ + "Team" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "required": [ + "file_patterns", + "minimum_approvals", + "reviewer" ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + } }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + "required": [ + "dismiss_stale_reviews_on_push", + "require_code_owner_review", + "require_last_push_approval", + "required_approving_review_count", + "required_review_thread_resolution" + ] } } - ] - }, - { - "allOf": [ - { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "tag_name_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + }, + { + "title": "required_status_checks", + "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_status_checks" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "required_status_checks": { + "type": "array", + "description": "Status checks that are required.", + "items": { + "title": "StatusCheckConfiguration", + "description": "Required status check", + "type": "object", + "properties": { + "context": { + "type": "string", + "description": "The status check context name that must be present on the commit." + }, + "integration_id": { + "type": "integer", + "description": "The optional integration ID that this status check must originate from." + } + }, + "required": [ + "context" ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." } }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + "strict_required_status_checks_policy": { + "type": "boolean", + "description": "Whether 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." + } }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + "required": [ + "required_status_checks", + "strict_required_status_checks_policy" + ] } } - ] - }, - { - "allOf": [ - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "workflows" - ] - }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } - }, - "required": [ - "path", - "repository_id" - ] - } - } - }, - "required": [ - "workflows" - ] - } + }, + { + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "non_fast_forward" + ] } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + } + }, + { + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_message_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + "required": [ + "operator", + "pattern" + ] } } - ] - }, - { - "allOf": [ - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "code_scanning" - ] - }, - "parameters": { - "type": "object", - "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } - }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } - } + }, + { + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_author_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." }, - "required": [ - "code_scanning_tools" - ] - } + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] + } + }, + { + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "committer_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "branch_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + "required": [ + "operator", + "pattern" + ] } } - ] - }, - { - "allOf": [ - { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "copilot_code_review" - ] + }, + { + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "tag_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "workflows" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" + }, + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] } } - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + "required": [ + "workflows" + ] } } - ] - }, - { - "allOf": [ - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "license_compliance_scanning" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + }, + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "code_scanning" + ] + }, + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] + }, + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] + } + } }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + "required": [ + "code_scanning_tools" + ] } } - ] - }, - { - "allOf": [ - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_path_restriction" - ] - }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } + }, + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "copilot_code_review" + ] + }, + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." }, - "required": [ - "restricted_file_paths" - ] + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." + } } } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + } + }, + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "license_compliance_scanning" + ] } } - ] - }, - { - "allOf": [ - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_path_length" - ] - }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 + }, + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_path_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" } - }, - "required": [ - "max_file_path_length" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + } }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + "required": [ + "restricted_file_paths" + ] } } - ] - }, - { - "allOf": [ - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_extension_restriction" - ] - }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_extensions" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + }, + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_path_length" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + "required": [ + "max_file_path_length" + ] } } - ] - }, - { - "allOf": [ - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_size" - ] - }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 + }, + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_extension_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" } - }, - "required": [ - "max_file_size" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] + } }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + "required": [ + "restricted_file_extensions" + ] + } + } + }, + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_size" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_size": { + "type": "integer", + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 + } }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } + "required": [ + "max_file_size" + ] } } - ] - } - ] + } + ] + } } - }, - "examples": { - "default": { - "value": [ + } + }, + "examples": { + "default": { + "value": { + "name": "super cool ruleset", + "target": "branch", + "enforcement": "active", + "bypass_actors": [ { - "type": "commit_message_pattern", - "ruleset_source_type": "Repository", - "ruleset_source": "monalisa/my-repo", - "ruleset_id": 42, - "parameters": { - "operator": "starts_with", - "pattern": "issue" - } - }, + "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", - "ruleset_source_type": "Organization", - "ruleset_source": "my-org", - "ruleset_id": 73, "parameters": { "operator": "contains", "pattern": "github" @@ -672572,1522 +688638,1441 @@ } } }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" - } - } - }, - "/repos/{owner}/{repo}/rulesets": { - "get": { - "summary": "Get all repository rulesets", - "description": "Get all the rulesets for a repository.", - "tags": [ - "repos" - ], - "operationId": "repos/get-repo-rulesets", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#get-all-repository-rulesets" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "includes_parents", - "description": "Include rulesets configured at higher levels that apply to this repository", - "in": "query", - "required": false, - "schema": { - "type": "boolean", - "default": true - } - }, - { - "name": "targets", - "description": "A comma-separated list of rule targets to filter by.\nIf provided, only rulesets that apply to the specified targets will be returned.\nFor example, `branch,tag,push`.\n", - "in": "query", - "required": false, - "schema": { - "type": "string", - "examples": [ - "branch,tag,push" - ] - } - } - ], "responses": { "200": { "description": "Response", "content": { "application/json": { "schema": { - "type": "array", - "items": { - "title": "Repository ruleset", - "type": "object", - "description": "A set of rules to apply when specified conditions are met.", - "required": [ - "id", - "name", - "source", - "enforcement" - ], - "properties": { - "id": { - "type": "integer", - "description": "The ID of the ruleset" - }, - "name": { - "type": "string", - "description": "The name of the ruleset" - }, - "target": { - "type": "string", - "description": "The target of the ruleset", - "enum": [ - "branch", - "tag", - "push", - "repository" - ] - }, - "source_type": { - "type": "string", - "description": "The type of the source of the ruleset", - "enum": [ - "Repository", - "Organization", - "Enterprise" - ] - }, - "source": { - "type": "string", - "description": "The name of the source" - }, - "enforcement": { - "type": "string", - "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", - "enum": [ - "disabled", - "active", - "evaluate" - ] - }, - "bypass_actors": { - "type": "array", - "description": "The actors that can bypass the rules in this ruleset", - "items": { - "title": "Repository Ruleset Bypass Actor", - "type": "object", - "description": "An actor that can bypass rules in a ruleset", - "required": [ - "actor_type" - ], - "properties": { - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." - }, - "actor_type": { - "type": "string", - "enum": [ - "Integration", - "OrganizationAdmin", - "RepositoryRole", - "Team", - "DeployKey", - "User" - ], - "description": "The type of actor that can bypass a ruleset." - }, - "bypass_mode": { - "type": "string", - "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", - "enum": [ - "always", - "pull_request", - "exempt" - ], - "default": "always" - } - } - } - }, - "current_user_can_bypass": { - "type": "string", - "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", - "enum": [ - "always", - "pull_requests_only", - "never", - "exempt" - ] - }, - "node_id": { - "type": "string" - }, - "_links": { + "title": "Repository ruleset", + "type": "object", + "description": "A set of rules to apply when specified conditions are met.", + "required": [ + "id", + "name", + "source", + "enforcement" + ], + "properties": { + "id": { + "type": "integer", + "description": "The ID of the ruleset" + }, + "name": { + "type": "string", + "description": "The name of the ruleset" + }, + "target": { + "type": "string", + "description": "The target of the ruleset", + "enum": [ + "branch", + "tag", + "push", + "repository" + ] + }, + "source_type": { + "type": "string", + "description": "The type of the source of the ruleset", + "enum": [ + "Repository", + "Organization", + "Enterprise" + ] + }, + "source": { + "type": "string", + "description": "The name of the source" + }, + "enforcement": { + "type": "string", + "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "enum": [ + "disabled", + "active", + "evaluate" + ] + }, + "bypass_actors": { + "type": "array", + "description": "The actors that can bypass the rules in this ruleset", + "items": { + "title": "Repository Ruleset Bypass Actor", "type": "object", + "description": "An actor that can bypass rules in a ruleset", + "required": [ + "actor_type" + ], "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "The URL of the ruleset" - } - } - }, - "html": { + "actor_id": { "type": [ - "object", + "integer", "null" ], - "properties": { - "href": { - "type": "string", - "description": "The html URL of the ruleset" - } - } + "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." + }, + "actor_type": { + "type": "string", + "enum": [ + "Integration", + "OrganizationAdmin", + "RepositoryRole", + "Team", + "DeployKey", + "User" + ], + "description": "The type of actor that can bypass a ruleset." + }, + "bypass_mode": { + "type": "string", + "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", + "enum": [ + "always", + "pull_request", + "exempt" + ], + "default": "always" } } - }, - "conditions": { - "anyOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Organization ruleset conditions", - "type": "object", - "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", - "oneOf": [ - { - "type": "object", - "title": "repository_name_and_ref_name", - "description": "Conditions to target repositories by name and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository names", - "type": "object", - "description": "Parameters for a repository name condition", - "properties": { - "repository_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - }, - "protected": { - "type": "boolean", - "description": "Whether renaming of target repositories is prevented." - } - } - } - }, - "required": [ - "repository_name" - ] - } - ] - }, - { - "type": "object", - "title": "repository_id_and_ref_name", - "description": "Conditions to target repositories by id and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository IDs", - "type": "object", - "description": "Parameters for a repository ID condition", - "properties": { - "repository_id": { - "type": "object", - "properties": { - "repository_ids": { - "type": "array", - "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", - "items": { - "type": "integer" - } - } - } - } - }, - "required": [ - "repository_id" - ] - } - ] - }, - { - "type": "object", - "title": "repository_property_and_ref_name", - "description": "Conditions to target repositories by property and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository properties", - "type": "object", - "description": "Parameters for a repository property condition", - "properties": { - "repository_property": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - }, - "exclude": { - "type": "array", - "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - } - } - } - }, - "required": [ - "repository_property" - ] - } - ] - } - ] + } + }, + "current_user_can_bypass": { + "type": "string", + "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", + "enum": [ + "always", + "pull_requests_only", + "never", + "exempt" + ] + }, + "node_id": { + "type": "string" + }, + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "The URL of the ruleset" + } } - ], - "type": [ - "null", - "object" - ] - }, - "rules": { - "type": "array", - "items": { - "title": "Repository Rule", + }, + "html": { + "type": [ + "object", + "null" + ], + "properties": { + "href": { + "type": "string", + "description": "The html URL of the ruleset" + } + } + } + } + }, + "conditions": { + "anyOf": [ + { + "title": "Repository ruleset conditions for ref names", "type": "object", - "description": "A repository rule.", - "oneOf": [ - { - "title": "creation", - "description": "Only allow users with bypass permission to create matching refs.", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { "type": "object", - "required": [ - "type" - ], "properties": { - "type": { - "type": "string", - "enum": [ - "creation" - ] + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } } } - }, + } + } + }, + { + "title": "Organization ruleset conditions", + "type": "object", + "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", + "oneOf": [ { - "title": "update", - "description": "Only allow users with bypass permission to update matching refs.", "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "update" - ] - }, - "parameters": { + "title": "repository_name_and_ref_name", + "description": "Conditions to target repositories by name and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", "type": "object", + "description": "Parameters for a repository ruleset ref name condition", "properties": { - "update_allows_fetch_and_merge": { - "type": "boolean", - "description": "Branch can pull changes from its upstream repository" + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } } - }, - "required": [ - "update_allows_fetch_and_merge" - ] - } - } - }, - { - "title": "deletion", - "description": "Only allow users with bypass permissions to delete matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "deletion" - ] - } - } - }, - { - "title": "required_linear_history", - "description": "Prevent merge commits from being pushed to matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_linear_history" - ] - } - } - }, - { - "title": "merge_queue", - "description": "Merges must be performed via a merge queue.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "merge_queue" - ] + } }, - "parameters": { + { + "title": "Repository ruleset conditions for repository names", "type": "object", + "description": "Parameters for a repository name condition", "properties": { - "check_response_timeout_minutes": { - "type": "integer", - "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", - "minimum": 1, - "maximum": 360 - }, - "grouping_strategy": { - "type": "string", - "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", - "enum": [ - "ALLGREEN", - "HEADGREEN" - ] - }, - "max_entries_to_build": { - "type": "integer", - "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", - "minimum": 0, - "maximum": 100 - }, - "max_entries_to_merge": { - "type": "integer", - "description": "The maximum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "merge_method": { - "type": "string", - "description": "Method to use when merging changes from queued pull requests.", - "enum": [ - "MERGE", - "SQUASH", - "REBASE" - ] - }, - "min_entries_to_merge": { - "type": "integer", - "description": "The minimum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "min_entries_to_merge_wait_minutes": { - "type": "integer", - "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", - "minimum": 0, - "maximum": 360 + "repository_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + }, + "protected": { + "type": "boolean", + "description": "Whether renaming of target repositories is prevented." + } + } } }, "required": [ - "check_response_timeout_minutes", - "grouping_strategy", - "max_entries_to_build", - "max_entries_to_merge", - "merge_method", - "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" + "repository_name" ] } - } + ] }, { - "title": "required_deployments", - "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_deployments" - ] + "title": "repository_id_and_ref_name", + "description": "Conditions to target repositories by id and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } }, - "parameters": { + { + "title": "Repository ruleset conditions for repository IDs", "type": "object", + "description": "Parameters for a repository ID condition", "properties": { - "required_deployment_environments": { - "type": "array", - "description": "The environments that must be successfully deployed to before branches can be merged.", - "items": { - "type": "string" + "repository_id": { + "type": "object", + "properties": { + "repository_ids": { + "type": "array", + "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", + "items": { + "type": "integer" + } + } } } }, "required": [ - "required_deployment_environments" - ] - } - } - }, - { - "title": "required_signatures", - "description": "Commits pushed to matching refs must have verified signatures.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_signatures" + "repository_id" ] } - } + ] }, { - "title": "pull_request", - "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "pull_request" - ] - }, - "parameters": { + "title": "repository_property_and_ref_name", + "description": "Conditions to target repositories by property and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", "type": "object", + "description": "Parameters for a repository ruleset ref name condition", "properties": { - "allowed_merge_methods": { - "type": "array", - "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", - "items": { - "type": "string", - "enum": [ - "merge", - "squash", - "rebase" - ] + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } } - }, - "dismiss_stale_reviews_on_push": { - "type": "boolean", - "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." - }, - "dismissal_restriction": { - "title": "DismissalRestriction", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + } + } + }, + { + "title": "Repository ruleset conditions for repository properties", + "type": "object", + "description": "Parameters for a repository property condition", + "properties": { + "repository_property": { "type": "object", "properties": { - "allowed_actors": { + "include": { "type": "array", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", "items": { - "title": "Actor", - "description": "An actor allowed to dismiss pull request reviews", + "title": "Repository ruleset property targeting definition", "type": "object", + "description": "Parameters for a targeting a repository property", "properties": { - "id": { - "type": "integer", - "description": "ID of the actor that can dismiss reviews." + "name": { + "type": "string", + "description": "The name of the repository property to target" }, - "type": { + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { "type": "string", - "description": "The type of the actor", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", "enum": [ - "User", - "Team", - "IntegrationInstallation", - "RepositoryRole" + "custom", + "system" ] } }, "required": [ - "id", - "type" + "name", + "property_values" ] } }, - "enabled": { - "type": "boolean", - "description": "Whether to restrict review dismissal to specific actors." - } - }, - "required": [ - "enabled" - ] - }, - "require_code_owner_review": { - "type": "boolean", - "description": "Require an approving review in pull requests that modify files that have a designated code owner." - }, - "require_last_push_approval": { - "type": "boolean", - "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." - }, - "required_approving_review_count": { - "type": "integer", - "description": "The number of approving reviews that are required before a pull request can be merged.", - "minimum": 0, - "maximum": 10 - }, - "required_review_thread_resolution": { - "type": "boolean", - "description": "All conversations on code must be resolved before a pull request can be merged." - }, - "required_reviewers": { - "type": "array", - "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", - "items": { - "title": "RequiredReviewerConfiguration", - "description": "A reviewing team, and file patterns describing which files they must approve changes to.", - "type": "object", - "properties": { - "file_patterns": { - "type": "array", - "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", - "items": { - "type": "string" - } - }, - "minimum_approvals": { - "type": "integer", - "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." - }, - "reviewer": { - "title": "Reviewer", - "description": "A required reviewing team", + "exclude": { + "type": "array", + "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", + "items": { + "title": "Repository ruleset property targeting definition", "type": "object", + "description": "Parameters for a targeting a repository property", "properties": { - "id": { - "type": "integer", - "description": "ID of the reviewer which must review changes to matching files." + "name": { + "type": "string", + "description": "The name of the repository property to target" }, - "type": { + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { "type": "string", - "description": "The type of the reviewer", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", "enum": [ - "Team" + "custom", + "system" ] } }, "required": [ - "id", - "type" + "name", + "property_values" ] } - }, - "required": [ - "file_patterns", - "minimum_approvals", - "reviewer" - ] + } } } }, "required": [ - "dismiss_stale_reviews_on_push", - "require_code_owner_review", - "require_last_push_approval", - "required_approving_review_count", - "required_review_thread_resolution" + "repository_property" ] } + ] + } + ] + } + ], + "type": [ + "null", + "object" + ] + }, + "rules": { + "type": "array", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule.", + "oneOf": [ + { + "title": "creation", + "description": "Only allow users with bypass permission to create matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "creation" + ] } - }, - { - "title": "required_status_checks", - "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_status_checks" - ] + } + }, + { + "title": "update", + "description": "Only allow users with bypass permission to update matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "update" + ] + }, + "parameters": { + "type": "object", + "properties": { + "update_allows_fetch_and_merge": { + "type": "boolean", + "description": "Branch can pull changes from its upstream repository" + } }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "required_status_checks": { - "type": "array", - "description": "Status checks that are required.", - "items": { - "title": "StatusCheckConfiguration", - "description": "Required status check", - "type": "object", - "properties": { - "context": { - "type": "string", - "description": "The status check context name that must be present on the commit." - }, - "integration_id": { - "type": "integer", - "description": "The optional integration ID that this status check must originate from." - } - }, - "required": [ - "context" - ] - } - }, - "strict_required_status_checks_policy": { - "type": "boolean", - "description": "Whether 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." - } - }, - "required": [ - "required_status_checks", - "strict_required_status_checks_policy" - ] - } + "required": [ + "update_allows_fetch_and_merge" + ] } - }, - { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "non_fast_forward" - ] - } + } + }, + { + "title": "deletion", + "description": "Only allow users with bypass permissions to delete matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "deletion" + ] } - }, - { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_message_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + } + }, + { + "title": "required_linear_history", + "description": "Prevent merge commits from being pushed to matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_linear_history" + ] + } + } + }, + { + "title": "merge_queue", + "description": "Merges must be performed via a merge queue.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "merge_queue" + ] + }, + "parameters": { + "type": "object", + "properties": { + "check_response_timeout_minutes": { + "type": "integer", + "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", + "minimum": 1, + "maximum": 360 }, - "required": [ - "operator", - "pattern" - ] - } + "grouping_strategy": { + "type": "string", + "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", + "enum": [ + "ALLGREEN", + "HEADGREEN" + ] + }, + "max_entries_to_build": { + "type": "integer", + "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", + "minimum": 0, + "maximum": 100 + }, + "max_entries_to_merge": { + "type": "integer", + "description": "The maximum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "merge_method": { + "type": "string", + "description": "Method to use when merging changes from queued pull requests.", + "enum": [ + "MERGE", + "SQUASH", + "REBASE" + ] + }, + "min_entries_to_merge": { + "type": "integer", + "description": "The minimum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "min_entries_to_merge_wait_minutes": { + "type": "integer", + "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", + "minimum": 0, + "maximum": 360 + } + }, + "required": [ + "check_response_timeout_minutes", + "grouping_strategy", + "max_entries_to_build", + "max_entries_to_merge", + "merge_method", + "min_entries_to_merge", + "min_entries_to_merge_wait_minutes" + ] } - }, - { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_author_email_pattern" - ] + } + }, + { + "title": "required_deployments", + "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_deployments" + ] + }, + "parameters": { + "type": "object", + "properties": { + "required_deployment_environments": { + "type": "array", + "description": "The environments that must be successfully deployed to before branches can be merged.", + "items": { + "type": "string" + } + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "required": [ + "required_deployment_environments" + ] + } + } + }, + { + "title": "required_signatures", + "description": "Commits pushed to matching refs must have verified signatures.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_signatures" + ] + } + } + }, + { + "title": "pull_request", + "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "pull_request" + ] + }, + "parameters": { + "type": "object", + "properties": { + "allowed_merge_methods": { + "type": "array", + "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", + "items": { "type": "string", - "description": "The operator to use for matching.", "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "merge", + "squash", + "rebase" ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." } }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "committer_email_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." + "dismiss_stale_reviews_on_push": { + "type": "boolean", + "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." + }, + "dismissal_restriction": { + "title": "DismissalRestriction", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "type": "object", + "properties": { + "allowed_actors": { + "type": "array", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "items": { + "title": "Actor", + "description": "An actor allowed to dismiss pull request reviews", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the actor that can dismiss reviews." + }, + "type": { + "type": "string", + "description": "The type of the actor", + "enum": [ + "User", + "Team", + "IntegrationInstallation", + "RepositoryRole" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether to restrict review dismissal to specific actors." + } }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "required": [ + "enabled" + ] + }, + "require_code_owner_review": { + "type": "boolean", + "description": "Require an approving review in pull requests that modify files that have a designated code owner." + }, + "require_last_push_approval": { + "type": "boolean", + "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + }, + "required_approving_review_count": { + "type": "integer", + "description": "The number of approving reviews that are required before a pull request can be merged.", + "minimum": 0, + "maximum": 10 + }, + "required_review_thread_resolution": { + "type": "boolean", + "description": "All conversations on code must be resolved before a pull request can be merged." + }, + "required_reviewers": { + "type": "array", + "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", + "items": { + "title": "RequiredReviewerConfiguration", + "description": "A reviewing team, and file patterns describing which files they must approve changes to.", + "type": "object", + "properties": { + "file_patterns": { + "type": "array", + "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", + "items": { + "type": "string" + } + }, + "minimum_approvals": { + "type": "integer", + "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." + }, + "reviewer": { + "title": "Reviewer", + "description": "A required reviewing team", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the reviewer which must review changes to matching files." + }, + "type": { + "type": "string", + "description": "The type of the reviewer", + "enum": [ + "Team" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "required": [ + "file_patterns", + "minimum_approvals", + "reviewer" ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "branch_name_pattern" - ] + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "required": [ + "dismiss_stale_reviews_on_push", + "require_code_owner_review", + "require_last_push_approval", + "required_approving_review_count", + "required_review_thread_resolution" + ] + } + } + }, + { + "title": "required_status_checks", + "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_status_checks" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "required_status_checks": { + "type": "array", + "description": "Status checks that are required.", + "items": { + "title": "StatusCheckConfiguration", + "description": "Required status check", + "type": "object", + "properties": { + "context": { + "type": "string", + "description": "The status check context name that must be present on the commit." + }, + "integration_id": { + "type": "integer", + "description": "The optional integration ID that this status check must originate from." + } + }, + "required": [ + "context" ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." } }, - "required": [ - "operator", - "pattern" - ] - } + "strict_required_status_checks_policy": { + "type": "boolean", + "description": "Whether 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." + } + }, + "required": [ + "required_status_checks", + "strict_required_status_checks_policy" + ] } - }, - { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "tag_name_pattern" - ] + } + }, + { + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "non_fast_forward" + ] + } + } + }, + { + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_message_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_author_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." }, - "required": [ - "operator", - "pattern" - ] - } + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] } - }, - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "workflows" - ] + } + }, + { + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "committer_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } - }, - "required": [ - "path", - "repository_id" - ] - } - } + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "branch_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." }, - "required": [ - "workflows" - ] - } + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] } - }, - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "code_scanning" - ] + } + }, + { + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "tag_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "parameters": { - "type": "object", - "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "workflows" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] } - }, - "required": [ - "code_scanning_tools" - ] - } - } - }, - { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "copilot_code_review" - ] + } }, - "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." + "required": [ + "workflows" + ] + } + } + }, + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "code_scanning" + ] + }, + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] + }, + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] } } - } - } - }, - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "license_compliance_scanning" - ] - } - } - }, - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_path_restriction" - ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } + "required": [ + "code_scanning_tools" + ] + } + } + }, + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "copilot_code_review" + ] + }, + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." }, - "required": [ - "restricted_file_paths" - ] + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." + } } } - }, - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_path_length" - ] - }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 + } + }, + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "license_compliance_scanning" + ] + } + } + }, + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_path_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" } - }, - "required": [ - "max_file_path_length" - ] - } + } + }, + "required": [ + "restricted_file_paths" + ] } - }, - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_extension_restriction" - ] + } + }, + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_path_length" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } + "required": [ + "max_file_path_length" + ] + } + } + }, + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_extension_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" } - }, - "required": [ - "restricted_file_extensions" - ] - } + } + }, + "required": [ + "restricted_file_extensions" + ] } - }, - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_size" - ] + } + }, + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_size" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_size": { + "type": "integer", + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 + } }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } - }, - "required": [ - "max_file_size" - ] - } + "required": [ + "max_file_size" + ] } } - ] - } - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" + } + ] } + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" } } }, "examples": { "default": { - "value": [ - { - "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" + "value": { + "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*" + ] + } }, - { - "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" + "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" }, - "created_at": "2023-08-15T08:43:03Z", - "updated_at": "2023-09-23T16:29:47Z" - } - ] + "html": { + "href": "https://github.com/monalisa/my-repo/rules/42" + } + }, + "created_at": "2023-07-15T08:43:03Z", + "updated_at": "2023-08-23T16:29:47Z" + } } } } @@ -674119,6 +690104,81 @@ } } }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, "500": { "description": "Internal Error", "content": { @@ -674147,16 +690207,16 @@ } } }, - "post": { - "summary": "Create a repository ruleset", - "description": "Create a ruleset for a repository.", + "delete": { + "summary": "Delete a repository ruleset", + "description": "Delete a ruleset for a repository.", "tags": [ "repos" ], - "operationId": "repos/create-repo-ruleset", + "operationId": "repos/delete-repo-ruleset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#create-a-repository-ruleset" + "url": "https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset" }, "x-github": { "githubCloudOnly": false, @@ -674182,3242 +690242,2346 @@ "schema": { "type": "string" } + }, + { + "name": "ruleset_id", + "description": "The ID of the ruleset.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } } ], - "requestBody": { - "description": "Request body", - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the ruleset." - }, - "target": { - "type": "string", - "description": "The target of the ruleset", - "enum": [ - "branch", - "tag", - "push" - ], - "default": "branch" - }, - "enforcement": { - "type": "string", - "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", - "enum": [ - "disabled", - "active", - "evaluate" - ] - }, - "bypass_actors": { - "type": "array", - "description": "The actors that can bypass the rules in this ruleset", - "items": { - "title": "Repository Ruleset Bypass Actor", - "type": "object", - "description": "An actor that can bypass rules in a ruleset", - "required": [ - "actor_type" - ], - "properties": { - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." - }, - "actor_type": { - "type": "string", - "enum": [ - "Integration", - "OrganizationAdmin", - "RepositoryRole", - "Team", - "DeployKey", - "User" - ], - "description": "The type of actor that can bypass a ruleset." - }, - "bypass_mode": { - "type": "string", - "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", - "enum": [ - "always", - "pull_request", - "exempt" - ], - "default": "always" - } - } + "responses": { + "204": { + "description": "Response" + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" } - }, - "conditions": { - "title": "Repository ruleset conditions for ref names", + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + } + } + }, + "/repos/{owner}/{repo}/rulesets/{ruleset_id}/history": { + "get": { + "summary": "Get repository ruleset history", + "description": "Get the history of a repository ruleset.", + "tags": [ + "repos" + ], + "operationId": "repos/get-repo-ruleset-history", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/rules#get-repository-ruleset-history" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "ruleset_id", + "description": "The ID of the ruleset.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Ruleset version", "type": "object", - "description": "Parameters for a repository ruleset ref name condition", + "description": "The historical version of a ruleset", + "required": [ + "version_id", + "actor", + "updated_at" + ], "properties": { - "ref_name": { + "version_id": { + "type": "integer", + "description": "The ID of the previous version of the ruleset" + }, + "actor": { "type": "object", + "description": "The actor who updated the ruleset", "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } + "id": { + "type": "integer" }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } + "type": { + "type": "string" } } + }, + "updated_at": { + "type": "string", + "format": "date-time" } } - }, - "rules": { - "type": "array", - "description": "An array of rules within the ruleset.", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule.", - "oneOf": [ - { - "title": "creation", - "description": "Only allow users with bypass permission to create matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "creation" - ] - } - } - }, - { - "title": "update", - "description": "Only allow users with bypass permission to update matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "update" - ] - }, - "parameters": { - "type": "object", - "properties": { - "update_allows_fetch_and_merge": { - "type": "boolean", - "description": "Branch can pull changes from its upstream repository" - } - }, - "required": [ - "update_allows_fetch_and_merge" - ] - } - } - }, - { - "title": "deletion", - "description": "Only allow users with bypass permissions to delete matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "deletion" - ] - } - } - }, - { - "title": "required_linear_history", - "description": "Prevent merge commits from being pushed to matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_linear_history" - ] - } - } - }, - { - "title": "merge_queue", - "description": "Merges must be performed via a merge queue.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "merge_queue" - ] - }, - "parameters": { - "type": "object", - "properties": { - "check_response_timeout_minutes": { - "type": "integer", - "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", - "minimum": 1, - "maximum": 360 - }, - "grouping_strategy": { - "type": "string", - "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", - "enum": [ - "ALLGREEN", - "HEADGREEN" - ] - }, - "max_entries_to_build": { - "type": "integer", - "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", - "minimum": 0, - "maximum": 100 - }, - "max_entries_to_merge": { - "type": "integer", - "description": "The maximum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "merge_method": { - "type": "string", - "description": "Method to use when merging changes from queued pull requests.", - "enum": [ - "MERGE", - "SQUASH", - "REBASE" - ] - }, - "min_entries_to_merge": { - "type": "integer", - "description": "The minimum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "min_entries_to_merge_wait_minutes": { - "type": "integer", - "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", - "minimum": 0, - "maximum": 360 - } - }, - "required": [ - "check_response_timeout_minutes", - "grouping_strategy", - "max_entries_to_build", - "max_entries_to_merge", - "merge_method", - "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" - ] - } - } - }, - { - "title": "required_deployments", - "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_deployments" - ] - }, - "parameters": { - "type": "object", - "properties": { - "required_deployment_environments": { - "type": "array", - "description": "The environments that must be successfully deployed to before branches can be merged.", - "items": { - "type": "string" - } - } - }, - "required": [ - "required_deployment_environments" - ] - } - } - }, - { - "title": "required_signatures", - "description": "Commits pushed to matching refs must have verified signatures.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_signatures" - ] - } - } - }, - { - "title": "pull_request", - "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "pull_request" - ] - }, - "parameters": { - "type": "object", - "properties": { - "allowed_merge_methods": { - "type": "array", - "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", - "items": { - "type": "string", - "enum": [ - "merge", - "squash", - "rebase" - ] - } - }, - "dismiss_stale_reviews_on_push": { - "type": "boolean", - "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." - }, - "dismissal_restriction": { - "title": "DismissalRestriction", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "type": "object", - "properties": { - "allowed_actors": { - "type": "array", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "items": { - "title": "Actor", - "description": "An actor allowed to dismiss pull request reviews", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the actor that can dismiss reviews." - }, - "type": { - "type": "string", - "description": "The type of the actor", - "enum": [ - "User", - "Team", - "IntegrationInstallation", - "RepositoryRole" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "enabled": { - "type": "boolean", - "description": "Whether to restrict review dismissal to specific actors." - } - }, - "required": [ - "enabled" - ] - }, - "require_code_owner_review": { - "type": "boolean", - "description": "Require an approving review in pull requests that modify files that have a designated code owner." - }, - "require_last_push_approval": { - "type": "boolean", - "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." - }, - "required_approving_review_count": { - "type": "integer", - "description": "The number of approving reviews that are required before a pull request can be merged.", - "minimum": 0, - "maximum": 10 - }, - "required_review_thread_resolution": { - "type": "boolean", - "description": "All conversations on code must be resolved before a pull request can be merged." - }, - "required_reviewers": { - "type": "array", - "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", - "items": { - "title": "RequiredReviewerConfiguration", - "description": "A reviewing team, and file patterns describing which files they must approve changes to.", - "type": "object", - "properties": { - "file_patterns": { - "type": "array", - "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", - "items": { - "type": "string" - } - }, - "minimum_approvals": { - "type": "integer", - "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." - }, - "reviewer": { - "title": "Reviewer", - "description": "A required reviewing team", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the reviewer which must review changes to matching files." - }, - "type": { - "type": "string", - "description": "The type of the reviewer", - "enum": [ - "Team" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "required": [ - "file_patterns", - "minimum_approvals", - "reviewer" - ] - } - } - }, - "required": [ - "dismiss_stale_reviews_on_push", - "require_code_owner_review", - "require_last_push_approval", - "required_approving_review_count", - "required_review_thread_resolution" - ] - } - } - }, - { - "title": "required_status_checks", - "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_status_checks" - ] - }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "required_status_checks": { - "type": "array", - "description": "Status checks that are required.", - "items": { - "title": "StatusCheckConfiguration", - "description": "Required status check", - "type": "object", - "properties": { - "context": { - "type": "string", - "description": "The status check context name that must be present on the commit." - }, - "integration_id": { - "type": "integer", - "description": "The optional integration ID that this status check must originate from." - } - }, - "required": [ - "context" - ] - } - }, - "strict_required_status_checks_policy": { - "type": "boolean", - "description": "Whether 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." - } - }, - "required": [ - "required_status_checks", - "strict_required_status_checks_policy" - ] - } - } - }, - { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "non_fast_forward" - ] - } - } + } + }, + "examples": { + "default": { + "value": [ + { + "version_id": 3, + "actor": { + "id": 1, + "type": "User" }, - { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_message_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } + "updated_at": "2024-10-23T16:29:47Z" + }, + { + "version_id": 2, + "actor": { + "id": 2, + "type": "User" }, - { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_author_email_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } + "updated_at": "2024-09-23T16:29:47Z" + }, + { + "version_id": 1, + "actor": { + "id": 1, + "type": "User" }, - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "committer_email_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } + "updated_at": "2024-08-23T16:29:47Z" + } + ] + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "rules" + } + } + }, + "/repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id}": { + "get": { + "summary": "Get repository ruleset version", + "description": "Get a version of a repository ruleset.", + "tags": [ + "repos" + ], + "operationId": "repos/get-repo-ruleset-version", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/rules#get-repository-ruleset-version" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ruleset_id", + "description": "The ID of the ruleset.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "version_id", + "description": "The ID of the version", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "allOf": [ + { + "title": "Ruleset version", + "type": "object", + "description": "The historical version of a ruleset", + "required": [ + "version_id", + "actor", + "updated_at" + ], + "properties": { + "version_id": { + "type": "integer", + "description": "The ID of the previous version of the ruleset" }, - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", + "actor": { "type": "object", - "required": [ - "type" - ], + "description": "The actor who updated the ruleset", "properties": { - "type": { - "type": "string", - "enum": [ - "branch_name_pattern" - ] + "id": { + "type": "integer" }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { "type": { - "type": "string", - "enum": [ - "tag_name_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] + "type": "string" } } }, - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "updated_at": { + "type": "string", + "format": "date-time" + } + } + }, + { + "type": "object", + "required": [ + "state" + ], + "properties": { + "state": { "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "workflows" - ] - }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } - }, - "required": [ - "path", - "repository_id" - ] - } - } - }, - "required": [ - "workflows" - ] - } + "description": "The state of the ruleset version" + } + } + } + ] + }, + "examples": { + "default": { + "value": { + "version_id": 3, + "actor": { + "id": 1, + "type": "User" + }, + "updated_at": "2024-10-23T16:29:47Z", + "state": { + "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" } - }, - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "code_scanning" - ] - }, - "parameters": { - "type": "object", - "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } - }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } - } - }, - "required": [ - "code_scanning_tools" - ] - } + ], + "conditions": { + "ref_name": { + "include": [ + "refs/heads/main", + "refs/heads/master" + ], + "exclude": [ + "refs/heads/dev*" + ] } }, - { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "copilot_code_review" - ] - }, + "rules": [ + { + "type": "commit_author_email_pattern", "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." - } - } + "operator": "contains", + "pattern": "github" } } - }, - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "license_compliance_scanning" - ] - } + ] + } + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "rules" + } + } + }, + "/repos/{owner}/{repo}/secret-scanning/alerts": { + "get": { + "summary": "List secret scanning alerts for a repository", + "description": "Lists secret scanning alerts for an eligible repository, from newest to oldest.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "tags": [ + "secret-scanning" + ], + "operationId": "secret-scanning/list-alerts-for-repo", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-a-repository" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "state", + "in": "query", + "description": "Set to `open` or `resolved` to only list secret scanning alerts in a specific state.", + "required": false, + "schema": { + "type": "string", + "enum": [ + "open", + "resolved" + ] + } + }, + { + "name": "secret_type", + "in": "query", + "description": "A comma-separated list of secret types to return. All default secret patterns are returned. To return generic patterns, pass the token name(s) in the parameter. See \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets)\" for a complete list of secret types.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "exclude_secret_types", + "in": "query", + "description": "A comma-separated list of secret types to exclude from the results. All default secret patterns are returned except those matching the specified types. Cannot be combined with the `secret_type` parameter. See \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets)\" for a complete list of secret types.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "exclude_providers", + "in": "query", + "description": "A comma-separated list of provider slugs to exclude from the results.\nProvider slugs use lowercase with underscores (e.g., `github_secret_scanning`, `clojars`).\nYou can find the provider slug in the `provider_slug` field of each alert.\nCannot be combined with the `providers` parameter.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "providers", + "in": "query", + "description": "A comma-separated list of provider slugs to filter by.\nProvider slugs use lowercase with underscores (e.g., `github_secret_scanning`, `clojars`).\nYou can find the provider slug in the `provider_slug` field of each alert.\nCannot be combined with the `exclude_providers` parameter.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "resolution", + "in": "query", + "description": "A comma-separated list of resolutions. Only secret scanning alerts with one of these resolutions are listed. Valid resolutions are `false_positive`, `wont_fix`, `revoked`, `pattern_edited`, `pattern_deleted` or `used_in_tests`.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "assignee", + "in": "query", + "description": "Filters alerts by assignee. Use `*` to get all assigned alerts, `none` to get all unassigned alerts, or a GitHub username to get alerts assigned to a specific user.", + "required": false, + "schema": { + "type": "string" + }, + "examples": { + "assigned-to-user": { + "value": "octocat", + "summary": "Filter for alerts assigned to the user \"octocat\"" + }, + "all-assigned": { + "value": "*", + "summary": "Filter for all assigned alerts" + }, + "all-unassigned": { + "value": "none", + "summary": "Filter for all unassigned alerts" + } + } + }, + { + "name": "sort", + "description": "The property to sort the results by. `created` means when the alert was created. `updated` means when the alert was updated or resolved.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created", + "updated" + ], + "default": "created" + } + }, + { + "name": "direction", + "description": "The direction to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "desc" + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "before", + "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for events before this cursor. To receive an initial cursor on your first request, include an empty \"before\" query string.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "after", + "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for events after this cursor. To receive an initial cursor on your first request, include an empty \"after\" query string.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "validity", + "in": "query", + "description": "A comma-separated list of validities that, when present, will return alerts that match the validities in this list. Valid options are `active`, `inactive`, and `unknown`.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "is_publicly_leaked", + "in": "query", + "description": "A boolean value representing whether or not to filter alerts by the publicly-leaked tag being present.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "is_multi_repo", + "in": "query", + "description": "A boolean value representing whether or not to filter alerts by the multi-repo tag being present.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "hide_secret", + "in": "query", + "description": "A boolean value representing whether or not to hide literal secrets in the results.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "is_bypassed", + "in": "query", + "description": "A boolean value (`true` or `false`) indicating whether to filter alerts by their push protection bypass status. When set to `true`, only alerts that were created because a push protection rule was bypassed will be returned. When set to `false`, only alerts that were not caused by a push protection bypass will be returned.", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "included_metadata", + "in": "query", + "description": "A comma-separated list of metadata fields to filter alerts by. Only alerts that have all of the\nspecified metadata fields attached will be returned. Possible values are: `owner-email`, `owner-id`,\n`owner-name`, `secret-id`, `secret-name`, `secret-issued-date`, `secret-expiration-date`, `organization-name`,\n`organization-id`, `last-used-date`, and `has-organization-access`.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "owner_email_hash", + "in": "query", + "description": "Filters alerts to only those whose attached `owner_email` metadata field matches the\nprovided value. The value must be the lowercase hex-encoded SHA-256 hash of the email\naddress to match (for example, the SHA-256 of `user@example.com`). Only alerts that\nhave an `owner_email` metadata value whose SHA-256 hash equals this parameter are\nreturned.", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "object", + "properties": { + "number": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + }, + "created_at": { + "type": "string", + "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "updated_at": { + "anyOf": [ + { + "type": "null" + }, + { + "type": "string", + "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true } - }, - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_path_restriction" - ] - }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } + ] + }, + "url": { + "type": "string", + "description": "The REST API URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "html_url": { + "type": "string", + "description": "The GitHub URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "locations_url": { + "type": "string", + "format": "uri", + "description": "The REST API URL of the code locations for this alert." + }, + "state": { + "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", + "type": "string", + "enum": [ + "open", + "resolved" + ] + }, + "resolution": { + "type": [ + "string", + "null" + ], + "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", + "enum": [ + "false_positive", + "wont_fix", + "revoked", + "used_in_tests", + null + ] + }, + "resolved_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "resolved_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] }, - "required": [ - "restricted_file_paths" - ] - } - } - }, - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_path_length" - ] - }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 - } + "email": { + "type": [ + "string", + "null" + ] }, - "required": [ - "max_file_path_length" - ] - } - } - }, - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_extension_restriction" - ] - }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } + "login": { + "type": "string", + "examples": [ + "octocat" + ] }, - "required": [ - "restricted_file_extensions" - ] - } - } - }, - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_size" - ] - }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] }, - "required": [ - "max_file_size" - ] - } + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] } - } - ] - } - } - }, - "required": [ - "name", - "enforcement" - ] - }, - "examples": { - "default": { - "value": { - "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" - } - } - ] - } - } - } - } - } - }, - "responses": { - "201": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Repository ruleset", - "type": "object", - "description": "A set of rules to apply when specified conditions are met.", - "required": [ - "id", - "name", - "source", - "enforcement" - ], - "properties": { - "id": { - "type": "integer", - "description": "The ID of the ruleset" - }, - "name": { - "type": "string", - "description": "The name of the ruleset" - }, - "target": { - "type": "string", - "description": "The target of the ruleset", - "enum": [ - "branch", - "tag", - "push", - "repository" - ] - }, - "source_type": { - "type": "string", - "description": "The type of the source of the ruleset", - "enum": [ - "Repository", - "Organization", - "Enterprise" - ] - }, - "source": { - "type": "string", - "description": "The name of the source" - }, - "enforcement": { - "type": "string", - "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", - "enum": [ - "disabled", - "active", - "evaluate" - ] - }, - "bypass_actors": { - "type": "array", - "description": "The actors that can bypass the rules in this ruleset", - "items": { - "title": "Repository Ruleset Bypass Actor", - "type": "object", - "description": "An actor that can bypass rules in a ruleset", - "required": [ - "actor_type" + }, + "resolution_comment": { + "type": [ + "string", + "null" ], - "properties": { - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." - }, - "actor_type": { - "type": "string", - "enum": [ - "Integration", - "OrganizationAdmin", - "RepositoryRole", - "Team", - "DeployKey", - "User" - ], - "description": "The type of actor that can bypass a ruleset." + "description": "An optional comment to resolve an alert." + }, + "secret_type": { + "type": "string", + "description": "The type of secret that secret scanning detected." + }, + "secret_type_display_name": { + "type": "string", + "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" + }, + "provider": { + "type": [ + "string", + "null" + ], + "description": "The provider of the secret that was detected." + }, + "provider_slug": { + "type": [ + "string", + "null" + ], + "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." + }, + "secret": { + "type": "string", + "description": "The secret that was detected." + }, + "push_protection_bypassed": { + "type": [ + "boolean", + "null" + ], + "description": "Whether push protection was bypassed for the detected secret." + }, + "push_protection_bypassed_by": { + "anyOf": [ + { + "type": "null" }, - "bypass_mode": { - "type": "string", - "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", - "enum": [ - "always", - "pull_request", - "exempt" - ], - "default": "always" - } - } - } - }, - "current_user_can_bypass": { - "type": "string", - "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", - "enum": [ - "always", - "pull_requests_only", - "never", - "exempt" - ] - }, - "node_id": { - "type": "string" - }, - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "The URL of the ruleset" - } - } - }, - "html": { - "type": [ - "object", - "null" - ], - "properties": { - "href": { - "type": "string", - "description": "The html URL of the ruleset" - } - } - } - } - }, - "conditions": { - "anyOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Organization ruleset conditions", - "type": "object", - "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", - "oneOf": [ - { - "type": "object", - "title": "repository_name_and_ref_name", - "description": "Conditions to target repositories by name and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository names", - "type": "object", - "description": "Parameters for a repository name condition", - "properties": { - "repository_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - }, - "protected": { - "type": "boolean", - "description": "Whether renaming of target repositories is prevented." - } - } - } - }, - "required": [ - "repository_name" - ] - } - ] - }, - { - "type": "object", - "title": "repository_id_and_ref_name", - "description": "Conditions to target repositories by id and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository IDs", - "type": "object", - "description": "Parameters for a repository ID condition", - "properties": { - "repository_id": { - "type": "object", - "properties": { - "repository_ids": { - "type": "array", - "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", - "items": { - "type": "integer" - } - } - } - } - }, - "required": [ - "repository_id" - ] - } - ] - }, - { - "type": "object", - "title": "repository_property_and_ref_name", - "description": "Conditions to target repositories by property and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository properties", - "type": "object", - "description": "Parameters for a repository property condition", - "properties": { - "repository_property": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - }, - "exclude": { - "type": "array", - "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - } - } - } - }, - "required": [ - "repository_property" - ] - } - ] - } - ] - } - ], - "type": [ - "null", - "object" - ] - }, - "rules": { - "type": "array", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule.", - "oneOf": [ { - "title": "creation", - "description": "Only allow users with bypass permission to create matching refs.", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, "type": { "type": "string", - "enum": [ - "creation" + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - } + }, + "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" + ] + } + ] + }, + "push_protection_bypassed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "push_protection_bypass_request_reviewer": { + "anyOf": [ + { + "type": "null" }, { - "title": "update", - "description": "Only allow users with bypass permission to update matching refs.", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, "type": { "type": "string", - "enum": [ - "update" + "examples": [ + "User" ] }, - "parameters": { + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "push_protection_bypass_request_reviewer_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment when reviewing a push protection bypass." + }, + "push_protection_bypass_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment when requesting a push protection bypass." + }, + "push_protection_bypass_request_html_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "description": "The URL to a push protection bypass request." + }, + "validity": { + "type": "string", + "description": "The token status as of the latest validity check.", + "enum": [ + "active", + "inactive", + "unknown" + ] + }, + "publicly_leaked": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was publicly leaked." + }, + "multi_repo": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." + }, + "is_base64_encoded": { + "type": [ + "boolean", + "null" + ], + "description": "A boolean value representing whether or not alert is base64 encoded" + }, + "first_location_detected": { + "anyOf": [ + { + "type": "null" + }, + { + "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", + "oneOf": [ + { + "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", "type": "object", "properties": { - "update_allows_fetch_and_merge": { - "type": "boolean", - "description": "Branch can pull changes from its upstream repository" + "path": { + "type": "string", + "description": "The file path in the repository", + "examples": [ + "/example/secrets.txt" + ] + }, + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" + }, + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" + }, + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" + }, + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" + }, + "blob_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "blob_url": { + "type": "string", + "description": "The API URL to get the associated blob resource" + }, + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "commit_url": { + "type": "string", + "description": "The API URL to get the associated commit resource" + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL to get the associated commit resource.", + "examples": [ + "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" + ] } }, "required": [ - "update_allows_fetch_and_merge" - ] - } - } - }, - { - "title": "deletion", - "description": "Only allow users with bypass permissions to delete matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "deletion" - ] - } - } - }, - { - "title": "required_linear_history", - "description": "Prevent merge commits from being pushed to matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_linear_history" - ] - } - } - }, - { - "title": "merge_queue", - "description": "Merges must be performed via a merge queue.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "merge_queue" + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "blob_url", + "commit_sha", + "commit_url" ] }, - "parameters": { + { + "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", "type": "object", "properties": { - "check_response_timeout_minutes": { - "type": "integer", - "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", - "minimum": 1, - "maximum": 360 - }, - "grouping_strategy": { + "path": { "type": "string", - "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", - "enum": [ - "ALLGREEN", - "HEADGREEN" + "description": "The file path of the wiki page", + "examples": [ + "/example/Home.md" ] }, - "max_entries_to_build": { - "type": "integer", - "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", - "minimum": 0, - "maximum": 100 + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "max_entries_to_merge": { - "type": "integer", - "description": "The maximum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" }, - "merge_method": { + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." + }, + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." + }, + "blob_sha": { "type": "string", - "description": "Method to use when merging changes from queued pull requests.", - "enum": [ - "MERGE", - "SQUASH", - "REBASE" + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" ] }, - "min_entries_to_merge": { - "type": "integer", - "description": "The minimum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 + "page_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki page", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] }, - "min_entries_to_merge_wait_minutes": { - "type": "integer", - "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", - "minimum": 0, - "maximum": 360 + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + }, + "commit_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki commit", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] } }, "required": [ - "check_response_timeout_minutes", - "grouping_strategy", - "max_entries_to_build", - "max_entries_to_merge", - "merge_method", - "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" - ] - } - } - }, - { - "title": "required_deployments", - "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_deployments" + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "page_url", + "commit_sha", + "commit_url" ] }, - "parameters": { + { + "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", "type": "object", "properties": { - "required_deployment_environments": { - "type": "array", - "description": "The environments that must be successfully deployed to before branches can be merged.", - "items": { - "type": "string" - } + "issue_title_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" + ] } }, "required": [ - "required_deployment_environments" - ] - } - } - }, - { - "title": "required_signatures", - "description": "Commits pushed to matching refs must have verified signatures.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_signatures" - ] - } - } - }, - { - "title": "pull_request", - "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "pull_request" + "issue_title_url" ] }, - "parameters": { + { + "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", "type": "object", "properties": { - "allowed_merge_methods": { - "type": "array", - "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", - "items": { - "type": "string", - "enum": [ - "merge", - "squash", - "rebase" - ] - } - }, - "dismiss_stale_reviews_on_push": { - "type": "boolean", - "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." - }, - "dismissal_restriction": { - "title": "DismissalRestriction", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "type": "object", - "properties": { - "allowed_actors": { - "type": "array", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "items": { - "title": "Actor", - "description": "An actor allowed to dismiss pull request reviews", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the actor that can dismiss reviews." - }, - "type": { - "type": "string", - "description": "The type of the actor", - "enum": [ - "User", - "Team", - "IntegrationInstallation", - "RepositoryRole" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "enabled": { - "type": "boolean", - "description": "Whether to restrict review dismissal to specific actors." - } - }, - "required": [ - "enabled" + "issue_body_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" ] }, - "require_code_owner_review": { - "type": "boolean", - "description": "Require an approving review in pull requests that modify files that have a designated code owner." - }, - "require_last_push_approval": { - "type": "boolean", - "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." - }, - "required_approving_review_count": { - "type": "integer", - "description": "The number of approving reviews that are required before a pull request can be merged.", - "minimum": 0, - "maximum": 10 - }, - "required_review_thread_resolution": { - "type": "boolean", - "description": "All conversations on code must be resolved before a pull request can be merged." - }, - "required_reviewers": { - "type": "array", - "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", - "items": { - "title": "RequiredReviewerConfiguration", - "description": "A reviewing team, and file patterns describing which files they must approve changes to.", - "type": "object", - "properties": { - "file_patterns": { - "type": "array", - "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", - "items": { - "type": "string" - } - }, - "minimum_approvals": { - "type": "integer", - "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." - }, - "reviewer": { - "title": "Reviewer", - "description": "A required reviewing team", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the reviewer which must review changes to matching files." - }, - "type": { - "type": "string", - "description": "The type of the reviewer", - "enum": [ - "Team" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "required": [ - "file_patterns", - "minimum_approvals", - "reviewer" - ] - } + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" + ] } }, "required": [ - "dismiss_stale_reviews_on_push", - "require_code_owner_review", - "require_last_push_approval", - "required_approving_review_count", - "required_review_thread_resolution" - ] - } - } - }, - { - "title": "required_status_checks", - "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_status_checks" + "issue_body_url" ] }, - "parameters": { + { + "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", "type": "object", "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "required_status_checks": { - "type": "array", - "description": "Status checks that are required.", - "items": { - "title": "StatusCheckConfiguration", - "description": "Required status check", - "type": "object", - "properties": { - "context": { - "type": "string", - "description": "The status check context name that must be present on the commit." - }, - "integration_id": { - "type": "integer", - "description": "The optional integration ID that this status check must originate from." - } - }, - "required": [ - "context" - ] - } + "issue_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + ] }, - "strict_required_status_checks_policy": { - "type": "boolean", - "description": "Whether 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." + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" + ] } }, "required": [ - "required_status_checks", - "strict_required_status_checks_policy" - ] - } - } - }, - { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "non_fast_forward" - ] - } - } - }, - { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_message_pattern" + "issue_comment_url" ] }, - "parameters": { + { + "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", "type": "object", "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "discussion_title_url": { "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082" ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." } }, "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_author_email_pattern" + "discussion_title_url" ] }, - "parameters": { + { + "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", "type": "object", "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "discussion_body_url": { "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussion-4566270" ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." } }, "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "committer_email_pattern" + "discussion_body_url" ] }, - "parameters": { + { + "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", "type": "object", "properties": { - "name": { + "discussion_comment_url": { "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "format": "uri", + "description": "The API URL to get the discussion comment where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + ] + } + }, + "required": [ + "discussion_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", + "type": "object", + "properties": { + "pull_request_title_url": { "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" ] }, - "pattern": { + "html_url": { "type": "string", - "description": "The pattern to match with." + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] } }, "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "branch_name_pattern" + "pull_request_title_url" ] }, - "parameters": { + { + "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", "type": "object", "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "pull_request_body_url": { "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" ] }, - "pattern": { + "html_url": { "type": "string", - "description": "The pattern to match with." + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] } }, "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "tag_name_pattern" + "pull_request_body_url" ] }, - "parameters": { + { + "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", "type": "object", "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "pull_request_comment_url": { "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "format": "uri", + "description": "The API URL to get the pull request comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" ] }, - "pattern": { + "html_url": { "type": "string", - "description": "The pattern to match with." + "format": "uri", + "description": "The GitHub URL for the pull request comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" + ] } }, "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "workflows" + "pull_request_comment_url" ] }, - "parameters": { + { + "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", "type": "object", "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + "pull_request_review_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + ] }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } - }, - "required": [ - "path", - "repository_id" - ] - } + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" + ] } }, "required": [ - "workflows" - ] - } - } - }, - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "code_scanning" + "pull_request_review_url" ] }, - "parameters": { + { + "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", "type": "object", "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } - }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } + "pull_request_review_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" + ] } }, "required": [ - "code_scanning_tools" + "pull_request_review_comment_url" ] } - } + ] + } + ] + }, + "has_more_locations": { + "type": "boolean", + "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." + }, + "assigned_to": { + "anyOf": [ + { + "type": "null" }, { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { - "type": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { "type": "string", - "enum": [ - "copilot_code_review" + "examples": [ + "octocat" ] }, - "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." - } - } - } - } - }, - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { "type": "string", - "enum": [ - "license_compliance_scanning" + "examples": [ + "MDQ6VXNlcjE=" ] - } - } - }, - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "avatar_url": { "type": "string", - "enum": [ - "file_path_restriction" + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_paths" + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" ] - } - } - }, - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { "type": "string", - "enum": [ - "max_file_path_length" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" ] }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 - } - }, - "required": [ - "max_file_path_length" + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" ] - } - } - }, - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "events_url": { "type": "string", - "enum": [ - "file_extension_restriction" + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_extensions" + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" ] - } - } - }, - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { + }, "type": { "type": "string", - "enum": [ - "max_file_size" + "examples": [ + "User" ] }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } - }, - "required": [ - "max_file_size" + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - } + }, + "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" + ] } ] - } - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - } - } - }, - "examples": { - "default": { - "value": { - "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" - } + "closure_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment from the closure request author." }, - "created_at": "2023-07-15T08:43:03Z", - "updated_at": "2023-08-23T16:29:47Z" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" + "closure_request_reviewer_comment": { + "type": [ + "string", + "null" ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" + "description": "An optional comment from the closure request reviewer." + }, + "closure_request_reviewer": { + "anyOf": [ + { + "type": "null" }, - "value": { - "oneOf": [ - { + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { "type": [ "string", "null" ] }, - { + "email": { "type": [ - "integer", + "string", "null" ] }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - } - } - }, - "/repos/{owner}/{repo}/rulesets/rule-suites": { - "get": { - "summary": "List repository rule suites", - "description": "Lists suites of rule evaluations at the repository level.\nFor more information, see \"[Managing rulesets for a repository](https://docs.github.com/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/managing-rulesets-for-a-repository#viewing-insights-for-rulesets).\"", - "tags": [ - "repos" - ], - "operationId": "repos/get-repo-rule-suites", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rule-suites#list-repository-rule-suites" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ref", - "description": "The name of the ref. Cannot contain wildcard characters. Optionally prefix with `refs/heads/` to limit to branches or `refs/tags/` to limit to tags. Omit the prefix to search across all refs. When specified, only rule evaluations triggered for this ref will be returned.", - "in": "query", - "schema": { - "type": "string" - }, - "x-multi-segment": true - }, - { - "name": "time_period", - "description": "The time period to filter by.\n\nFor example, `day` will filter for rule suites that occurred in the past 24 hours, and `week` will filter for rule suites that occurred in the past 7 days (168 hours).", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "hour", - "day", - "week", - "month" - ], - "default": "day" - } - }, - { - "name": "actor_name", - "description": "The handle for the GitHub user account to filter on. When specified, only rule evaluations triggered by this actor will be returned.", - "in": "query", - "schema": { - "type": "string" - } - }, - { - "name": "rule_suite_result", - "description": "The rule suite results to filter on. When specified, only suites with this result will be returned.", - "in": "query", - "schema": { - "type": "string", - "enum": [ - "pass", - "fail", - "bypass", - "all" - ], - "default": "all" - } - }, - { - "name": "evaluate_status", - "description": "The evaluate status to filter on. When specified, only rule suites resulting from rulesets with the specified evaluate status will be returned.\n - `all` - all rule suites will be returned.\n - `active` - only rule suites resulting from rulesets in active (non-evaluate) mode will be returned.\n - `evaluate` - only rule suites resulting from rulesets in evaluate mode will be returned.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "all", - "active", - "evaluate" - ], - "default": "all" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Rule Suites", - "description": "Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "The unique identifier of the rule insight." - }, - "actor_id": { - "type": "integer", - "description": "The number that identifies the user." - }, - "actor_name": { - "type": "string", - "description": "The handle for the GitHub user account." - }, - "before_sha": { - "type": "string", - "description": "The first commit sha before the push evaluation." - }, - "after_sha": { - "type": "string", - "description": "The last commit sha in the push evaluation." - }, - "ref": { - "type": "string", - "description": "The ref name that the evaluation ran on." - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository associated with the rule evaluation." - }, - "repository_name": { - "type": "string", - "description": "The name of the repository without the `.git` extension." - }, - "pushed_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "result": { - "type": "string", - "enum": [ - "pass", - "fail", - "bypass" - ], - "description": "The result of the rule evaluations for rules with the `active` enforcement status." - }, - "evaluation_result": { - "type": "string", - "enum": [ - "pass", - "fail", - "bypass" - ], - "description": "The result of the rule evaluations for rules with the `active` and `evaluate` enforcement statuses, demonstrating whether rules would pass or fail if all rules in the rule suite were `active`." - } - } - } - }, - "examples": { - "default": { - "value": [ - { - "id": 21, - "actor_id": 12, - "actor_name": "octocat", - "before_sha": "893f768e172fb1bc9c5d6f3dd48557e45f14e01d", - "after_sha": "dedd88641a362b6b4ea872da4847d6131a164d01", - "ref": "refs/heads/i-see-everything", - "repository_id": 404, - "repository_name": "octo-repo", - "pushed_at": "2023-07-06T08:43:03Z", - "result": "bypass" - }, - { - "id": 25, - "actor_id": 11, - "actor_name": "not-octocat", - "before_sha": "48994e4e01ccc943624c6231f172702b82b233cc", - "after_sha": "ecfd5a1025fa271a33ca5608d089476a2df3c9a1", - "ref": "refs/heads/i-am-everything", - "repository_id": 404, - "repository_name": "octo-repo", - "pushed_at": "2023-07-07T08:43:03Z", - "result": "pass", - "evaluation_result": "fail" - } - ] - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rule-suites" - } - } - }, - "/repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}": { - "get": { - "summary": "Get a repository rule suite", - "description": "Gets information about a suite of rule evaluations from within a repository.\nFor more information, see \"[Managing rulesets for a repository](https://docs.github.com/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/managing-rulesets-for-a-repository#viewing-insights-for-rulesets).\"", - "tags": [ - "repos" - ], - "operationId": "repos/get-repo-rule-suite", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rule-suites#get-a-repository-rule-suite" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "rule_suite_id", - "description": "The unique identifier of the rule suite result.\nTo get this ID, you can use [GET /repos/{owner}/{repo}/rulesets/rule-suites](https://docs.github.com/rest/repos/rule-suites#list-repository-rule-suites)\nfor repositories and [GET /orgs/{org}/rulesets/rule-suites](https://docs.github.com/rest/orgs/rule-suites#list-organization-rule-suites)\nfor organizations.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Rule Suite", - "description": "Response", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "The unique identifier of the rule insight." - }, - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The number that identifies the user." - }, - "actor_name": { - "type": [ - "string", - "null" - ], - "description": "The handle for the GitHub user account." - }, - "before_sha": { - "type": "string", - "description": "The previous commit SHA of the ref." - }, - "after_sha": { - "type": "string", - "description": "The new commit SHA of the ref." - }, - "ref": { - "type": "string", - "description": "The ref name that the evaluation ran on." - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository associated with the rule evaluation." - }, - "repository_name": { - "type": "string", - "description": "The name of the repository without the `.git` extension." - }, - "pushed_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "result": { - "type": "string", - "enum": [ - "pass", - "fail", - "bypass" - ], - "description": "The result of the rule evaluations for rules with the `active` enforcement status." - }, - "evaluation_result": { - "type": [ - "string", - "null" - ], - "enum": [ - "pass", - "fail", - "bypass", - null - ], - "description": "The result of the rule evaluations for rules with the `active` and `evaluate` enforcement statuses, demonstrating whether rules would pass or fail if all rules in the rule suite were `active`. Null if no rules with `evaluate` enforcement status were run." - }, - "rule_evaluations": { - "type": "array", - "description": "Details on the evaluated rules.", - "items": { - "type": "object", - "properties": { - "rule_source": { - "type": "object", - "properties": { - "type": { + "login": { "type": "string", - "description": "The type of rule source." + "examples": [ + "octocat" + ] }, "id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the rule source." + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] }, - "name": { + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { "type": [ "string", "null" ], - "description": "The name of the rule source." + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } - } - }, - "enforcement": { - "type": "string", - "enum": [ - "active", - "evaluate", - "deleted ruleset" - ], - "description": "The enforcement level of this rule source." - }, - "result": { - "type": "string", - "enum": [ - "pass", - "fail" - ], - "description": "The result of the evaluation of the individual rule." - }, - "rule_type": { - "type": "string", - "description": "The type of rule." - }, - "details": { - "type": [ - "string", - "null" - ], - "description": "The detailed failure message for the rule. Null if the rule passed." + }, + "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" + ] } - } + ] } } } }, "examples": { "default": { - "value": { - "id": 21, - "actor_id": 12, - "actor_name": "octocat", - "before_sha": "893f768e172fb1bc9c5d6f3dd48557e45f14e01d", - "after_sha": "dedd88641a362b6b4ea872da4847d6131a164d01", - "ref": "refs/heads/i-see-everything", - "repository_id": 404, - "repository_name": "octo-repo", - "pushed_at": "2023-07-06T08:43:03Z", - "result": "bypass", - "evaluation_result": "fail", - "rule_evaluations": [ - { - "rule_source": { - "type": "ruleset", - "id": 2, - "name": "Author email must be a GitHub email address" - }, - "enforcement": "active", - "result": "pass", - "rule_type": "commit_author_email_pattern" + "value": [ + { + "number": 2, + "created_at": "2020-11-06T18:48:51Z", + "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/2", + "html_url": "https://github.com/owner/private-repo/security/secret-scanning/2", + "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/2/locations", + "state": "resolved", + "resolution": "false_positive", + "resolved_at": "2020-11-07T02:47:13Z", + "resolved_by": { + "login": "monalisa", + "id": 2, + "node_id": "MDQ6VXNlcjI=", + "avatar_url": "https://alambic.github.com/avatars/u/2?", + "gravatar_id": "", + "url": "https://api.github.com/users/monalisa", + "html_url": "https://github.com/monalisa", + "followers_url": "https://api.github.com/users/monalisa/followers", + "following_url": "https://api.github.com/users/monalisa/following{/other_user}", + "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", + "organizations_url": "https://api.github.com/users/monalisa/orgs", + "repos_url": "https://api.github.com/users/monalisa/repos", + "events_url": "https://api.github.com/users/monalisa/events{/privacy}", + "received_events_url": "https://api.github.com/users/monalisa/received_events", + "type": "User", + "site_admin": true }, - { - "rule_source": { - "type": "protected_branch" - }, - "enforcement": "active", - "result": "fail", - "rule_type": "pull_request", - "details": "Changes must be made through a pull request." + "secret_type": "adafruit_io_key", + "secret_type_display_name": "Adafruit IO Key", + "secret": "aio_XXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "push_protection_bypassed_by": { + "login": "monalisa", + "id": 2, + "node_id": "MDQ6VXNlcjI=", + "avatar_url": "https://alambic.github.com/avatars/u/2?", + "gravatar_id": "", + "url": "https://api.github.com/users/monalisa", + "html_url": "https://github.com/monalisa", + "followers_url": "https://api.github.com/users/monalisa/followers", + "following_url": "https://api.github.com/users/monalisa/following{/other_user}", + "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", + "organizations_url": "https://api.github.com/users/monalisa/orgs", + "repos_url": "https://api.github.com/users/monalisa/repos", + "events_url": "https://api.github.com/users/monalisa/events{/privacy}", + "received_events_url": "https://api.github.com/users/monalisa/received_events", + "type": "User", + "site_admin": true + }, + "push_protection_bypassed": true, + "push_protection_bypassed_at": "2020-11-06T21:48:51Z", + "push_protection_bypass_request_reviewer": { + "login": "octocat", + "id": 3, + "node_id": "MDQ6VXNlcjI=", + "avatar_url": "https://alambic.github.com/avatars/u/3?", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": true + }, + "push_protection_bypass_request_reviewer_comment": "Example response", + "push_protection_bypass_request_comment": "Example comment", + "push_protection_bypass_request_html_url": "https://github.com/owner/repo/secret_scanning_exemptions/1", + "resolution_comment": "Example comment", + "validity": "inactive", + "publicly_leaked": false, + "multi_repo": false, + "is_base64_encoded": false, + "first_location_detected": { + "path": "/example/secrets.txt", + "start_line": 1, + "end_line": 1, + "start_column": 1, + "end_column": 64, + "blob_sha": "af5626b4a114abcb82d63db7c8082c3c4756e51b", + "blob_url": "https://api.github.com/repos/octocat/hello-world/git/blobs/af5626b4a114abcb82d63db7c8082c3c4756e51b", + "commit_sha": "f14d7debf9775f957cf4f1e8176da0786431f72b", + "commit_url": "https://api.github.com/repos/octocat/hello-world/git/commits/f14d7debf9775f957cf4f1e8176da0786431f72b" }, - { - "rule_source": { - "type": "ruleset", - "id": 3, - "name": "Evaluate commit message pattern" - }, - "enforcement": "evaluate", - "result": "fail", - "rule_type": "commit_message_pattern" + "has_more_locations": true, + "assigned_to": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false } - ] - } + } + ] } } } } }, "404": { - "description": "Resource not found", + "description": "Repository is public or secret scanning is disabled for the repository" + }, + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { + "code": { "type": "string" }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -677428,28 +692592,22 @@ "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rule-suites" + "category": "secret-scanning", + "subcategory": "secret-scanning" } } }, - "/repos/{owner}/{repo}/rulesets/{ruleset_id}": { + "/repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}": { "get": { - "summary": "Get a repository ruleset", - "description": "Get a ruleset for a repository.\n\n**Note:** To prevent leaking sensitive information, the `bypass_actors` property is only returned if the user\nmaking the API request has write access to the ruleset.", + "summary": "Get a secret scanning alert", + "description": "Gets a single secret scanning alert detected in an eligible repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", "tags": [ - "repos" + "secret-scanning" ], - "operationId": "repos/get-repo-ruleset", + "operationId": "secret-scanning/get-alert", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#get-a-repository-ruleset" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#get-a-secret-scanning-alert" }, "parameters": [ { @@ -677471,22 +692629,24 @@ } }, { - "name": "ruleset_id", - "description": "The ID of the ruleset.", + "name": "alert_number", "in": "path", + "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", "required": true, "schema": { - "type": "integer" + "type": "integer", + "description": "The security alert number.", + "readOnly": true } }, { - "name": "includes_parents", - "description": "Include rulesets configured at higher levels that apply to this repository", + "name": "hide_secret", "in": "query", + "description": "A boolean value representing whether or not to hide literal secrets in the results.", "required": false, "schema": { "type": "boolean", - "default": true + "default": false } } ], @@ -677496,1510 +692656,1580 @@ "content": { "application/json": { "schema": { - "title": "Repository ruleset", "type": "object", - "description": "A set of rules to apply when specified conditions are met.", - "required": [ - "id", - "name", - "source", - "enforcement" - ], "properties": { - "id": { + "number": { "type": "integer", - "description": "The ID of the ruleset" + "description": "The security alert number.", + "readOnly": true }, - "name": { + "created_at": { "type": "string", - "description": "The name of the ruleset" + "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true }, - "target": { - "type": "string", - "description": "The target of the ruleset", - "enum": [ - "branch", - "tag", - "push", - "repository" + "updated_at": { + "anyOf": [ + { + "type": "null" + }, + { + "type": "string", + "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + } ] }, - "source_type": { + "url": { "type": "string", - "description": "The type of the source of the ruleset", - "enum": [ - "Repository", - "Organization", - "Enterprise" - ] + "description": "The REST API URL of the alert resource.", + "format": "uri", + "readOnly": true }, - "source": { + "html_url": { "type": "string", - "description": "The name of the source" + "description": "The GitHub URL of the alert resource.", + "format": "uri", + "readOnly": true }, - "enforcement": { + "locations_url": { + "type": "string", + "format": "uri", + "description": "The REST API URL of the code locations for this alert." + }, + "state": { + "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", "type": "string", - "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", "enum": [ - "disabled", - "active", - "evaluate" + "open", + "resolved" ] }, - "bypass_actors": { - "type": "array", - "description": "The actors that can bypass the rules in this ruleset", - "items": { - "title": "Repository Ruleset Bypass Actor", - "type": "object", - "description": "An actor that can bypass rules in a ruleset", - "required": [ - "actor_type" - ], - "properties": { - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." - }, - "actor_type": { - "type": "string", - "enum": [ - "Integration", - "OrganizationAdmin", - "RepositoryRole", - "Team", - "DeployKey", - "User" - ], - "description": "The type of actor that can bypass a ruleset." - }, - "bypass_mode": { - "type": "string", - "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", - "enum": [ - "always", - "pull_request", - "exempt" - ], - "default": "always" - } - } - } - }, - "current_user_can_bypass": { - "type": "string", - "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", + "resolution": { + "type": [ + "string", + "null" + ], + "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", "enum": [ - "always", - "pull_requests_only", - "never", - "exempt" + "false_positive", + "wont_fix", + "revoked", + "used_in_tests", + null ] }, - "node_id": { - "type": "string" + "resolved_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." }, - "_links": { - "type": "object", - "properties": { - "self": { + "resolved_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "href": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { "type": "string", - "description": "The URL of the ruleset" + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } - } + }, + "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" + ] + } + ] + }, + "resolution_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment to resolve an alert." + }, + "secret_type": { + "type": "string", + "description": "The type of secret that secret scanning detected." + }, + "secret_type_display_name": { + "type": "string", + "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" + }, + "provider": { + "type": [ + "string", + "null" + ], + "description": "The provider of the secret that was detected." + }, + "provider_slug": { + "type": [ + "string", + "null" + ], + "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." + }, + "secret": { + "type": "string", + "description": "The secret that was detected." + }, + "push_protection_bypassed": { + "type": [ + "boolean", + "null" + ], + "description": "Whether push protection was bypassed for the detected secret." + }, + "push_protection_bypassed_by": { + "anyOf": [ + { + "type": "null" }, - "html": { - "type": [ - "object", - "null" - ], + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", "properties": { - "href": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { "type": "string", - "description": "The html URL of the ruleset" + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } - } + }, + "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" + ] } - } + ] }, - "conditions": { + "push_protection_bypassed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "push_protection_bypass_request_reviewer": { "anyOf": [ { - "title": "Repository ruleset conditions for ref names", + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "description": "Parameters for a repository ruleset ref name condition", "properties": { - "ref_name": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "push_protection_bypass_request_reviewer_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment when reviewing a push protection bypass." + }, + "push_protection_bypass_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment when requesting a push protection bypass." + }, + "push_protection_bypass_request_html_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "description": "The URL to a push protection bypass request." + }, + "validity": { + "type": "string", + "description": "The token status as of the latest validity check.", + "enum": [ + "active", + "inactive", + "unknown" + ] + }, + "publicly_leaked": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was publicly leaked." + }, + "multi_repo": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." + }, + "is_base64_encoded": { + "type": [ + "boolean", + "null" + ], + "description": "A boolean value representing whether or not alert is base64 encoded" + }, + "first_location_detected": { + "anyOf": [ + { + "type": "null" + }, + { + "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", + "oneOf": [ + { + "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", "type": "object", "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } + "path": { + "type": "string", + "description": "The file path in the repository", + "examples": [ + "/example/secrets.txt" + ] + }, + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" + }, + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" + }, + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" + }, + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" + }, + "blob_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "blob_url": { + "type": "string", + "description": "The API URL to get the associated blob resource" + }, + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "commit_url": { + "type": "string", + "description": "The API URL to get the associated commit resource" + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL to get the associated commit resource.", + "examples": [ + "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" + ] + } + }, + "required": [ + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "blob_url", + "commit_sha", + "commit_url" + ] + }, + { + "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The file path of the wiki page", + "examples": [ + "/example/Home.md" + ] + }, + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" + }, + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" + }, + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." + }, + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." + }, + "blob_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "page_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki page", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + }, + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } + "commit_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki commit", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] } - } - } - } - }, - { - "title": "Organization ruleset conditions", - "type": "object", - "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", - "oneOf": [ + }, + "required": [ + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "page_url", + "commit_sha", + "commit_url" + ] + }, { + "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", "type": "object", - "title": "repository_name_and_ref_name", - "description": "Conditions to target repositories by name and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } + "properties": { + "issue_title_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] }, - { - "title": "Repository ruleset conditions for repository names", - "type": "object", - "description": "Parameters for a repository name condition", - "properties": { - "repository_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - }, - "protected": { - "type": "boolean", - "description": "Whether renaming of target repositories is prevented." - } - } - } - }, - "required": [ - "repository_name" + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" ] } + }, + "required": [ + "issue_title_url" ] }, { + "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", "type": "object", - "title": "repository_id_and_ref_name", - "description": "Conditions to target repositories by id and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } + "properties": { + "issue_body_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] }, - { - "title": "Repository ruleset conditions for repository IDs", - "type": "object", - "description": "Parameters for a repository ID condition", - "properties": { - "repository_id": { - "type": "object", - "properties": { - "repository_ids": { - "type": "array", - "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", - "items": { - "type": "integer" - } - } - } - } - }, - "required": [ - "repository_id" + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" ] } + }, + "required": [ + "issue_body_url" ] }, { + "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", "type": "object", - "title": "repository_property_and_ref_name", - "description": "Conditions to target repositories by property and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } + "properties": { + "issue_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + ] }, - { - "title": "Repository ruleset conditions for repository properties", - "type": "object", - "description": "Parameters for a repository property condition", - "properties": { - "repository_property": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - }, - "exclude": { - "type": "array", - "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - } - } - } - }, - "required": [ - "repository_property" + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" ] } - ] - } - ] - } - ], - "type": [ - "null", - "object" - ] - }, - "rules": { - "type": "array", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule.", - "oneOf": [ - { - "title": "creation", - "description": "Only allow users with bypass permission to create matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "creation" - ] - } - } - }, - { - "title": "update", - "description": "Only allow users with bypass permission to update matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "update" - ] - }, - "parameters": { - "type": "object", - "properties": { - "update_allows_fetch_and_merge": { - "type": "boolean", - "description": "Branch can pull changes from its upstream repository" - } - }, - "required": [ - "update_allows_fetch_and_merge" - ] - } - } - }, - { - "title": "deletion", - "description": "Only allow users with bypass permissions to delete matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "deletion" - ] - } - } - }, - { - "title": "required_linear_history", - "description": "Prevent merge commits from being pushed to matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_linear_history" - ] - } - } - }, - { - "title": "merge_queue", - "description": "Merges must be performed via a merge queue.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "merge_queue" - ] - }, - "parameters": { - "type": "object", - "properties": { - "check_response_timeout_minutes": { - "type": "integer", - "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", - "minimum": 1, - "maximum": 360 - }, - "grouping_strategy": { - "type": "string", - "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", - "enum": [ - "ALLGREEN", - "HEADGREEN" - ] - }, - "max_entries_to_build": { - "type": "integer", - "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", - "minimum": 0, - "maximum": 100 - }, - "max_entries_to_merge": { - "type": "integer", - "description": "The maximum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "merge_method": { - "type": "string", - "description": "Method to use when merging changes from queued pull requests.", - "enum": [ - "MERGE", - "SQUASH", - "REBASE" - ] - }, - "min_entries_to_merge": { - "type": "integer", - "description": "The minimum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "min_entries_to_merge_wait_minutes": { - "type": "integer", - "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", - "minimum": 0, - "maximum": 360 - } - }, - "required": [ - "check_response_timeout_minutes", - "grouping_strategy", - "max_entries_to_build", - "max_entries_to_merge", - "merge_method", - "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" - ] - } - } - }, - { - "title": "required_deployments", - "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_deployments" - ] - }, - "parameters": { - "type": "object", - "properties": { - "required_deployment_environments": { - "type": "array", - "description": "The environments that must be successfully deployed to before branches can be merged.", - "items": { - "type": "string" - } - } - }, - "required": [ - "required_deployment_environments" - ] - } - } - }, - { - "title": "required_signatures", - "description": "Commits pushed to matching refs must have verified signatures.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_signatures" - ] - } - } - }, - { - "title": "pull_request", - "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "pull_request" - ] - }, - "parameters": { - "type": "object", - "properties": { - "allowed_merge_methods": { - "type": "array", - "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", - "items": { - "type": "string", - "enum": [ - "merge", - "squash", - "rebase" - ] - } - }, - "dismiss_stale_reviews_on_push": { - "type": "boolean", - "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." - }, - "dismissal_restriction": { - "title": "DismissalRestriction", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "type": "object", - "properties": { - "allowed_actors": { - "type": "array", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "items": { - "title": "Actor", - "description": "An actor allowed to dismiss pull request reviews", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the actor that can dismiss reviews." - }, - "type": { - "type": "string", - "description": "The type of the actor", - "enum": [ - "User", - "Team", - "IntegrationInstallation", - "RepositoryRole" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "enabled": { - "type": "boolean", - "description": "Whether to restrict review dismissal to specific actors." - } - }, - "required": [ - "enabled" - ] - }, - "require_code_owner_review": { - "type": "boolean", - "description": "Require an approving review in pull requests that modify files that have a designated code owner." - }, - "require_last_push_approval": { - "type": "boolean", - "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." - }, - "required_approving_review_count": { - "type": "integer", - "description": "The number of approving reviews that are required before a pull request can be merged.", - "minimum": 0, - "maximum": 10 - }, - "required_review_thread_resolution": { - "type": "boolean", - "description": "All conversations on code must be resolved before a pull request can be merged." - }, - "required_reviewers": { - "type": "array", - "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", - "items": { - "title": "RequiredReviewerConfiguration", - "description": "A reviewing team, and file patterns describing which files they must approve changes to.", - "type": "object", - "properties": { - "file_patterns": { - "type": "array", - "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", - "items": { - "type": "string" - } - }, - "minimum_approvals": { - "type": "integer", - "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." - }, - "reviewer": { - "title": "Reviewer", - "description": "A required reviewing team", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the reviewer which must review changes to matching files." - }, - "type": { - "type": "string", - "description": "The type of the reviewer", - "enum": [ - "Team" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "required": [ - "file_patterns", - "minimum_approvals", - "reviewer" - ] - } - } - }, - "required": [ - "dismiss_stale_reviews_on_push", - "require_code_owner_review", - "require_last_push_approval", - "required_approving_review_count", - "required_review_thread_resolution" - ] - } - } - }, - { - "title": "required_status_checks", - "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_status_checks" - ] - }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "required_status_checks": { - "type": "array", - "description": "Status checks that are required.", - "items": { - "title": "StatusCheckConfiguration", - "description": "Required status check", - "type": "object", - "properties": { - "context": { - "type": "string", - "description": "The status check context name that must be present on the commit." - }, - "integration_id": { - "type": "integer", - "description": "The optional integration ID that this status check must originate from." - } - }, - "required": [ - "context" - ] - } - }, - "strict_required_status_checks_policy": { - "type": "boolean", - "description": "Whether 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." - } - }, - "required": [ - "required_status_checks", - "strict_required_status_checks_policy" - ] - } - } - }, - { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "non_fast_forward" - ] - } - } - }, - { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_message_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_author_email_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "committer_email_pattern" - ] }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "branch_name_pattern" - ] + "required": [ + "issue_comment_url" + ] + }, + { + "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", + "type": "object", + "properties": { + "discussion_title_url": { + "type": "string", + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "tag_name_pattern" - ] + "required": [ + "discussion_title_url" + ] + }, + { + "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", + "type": "object", + "properties": { + "discussion_body_url": { + "type": "string", + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussion-4566270" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "workflows" - ] + "required": [ + "discussion_body_url" + ] + }, + { + "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", + "type": "object", + "properties": { + "discussion_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the discussion comment where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } - }, - "required": [ - "path", - "repository_id" - ] - } - } + "required": [ + "discussion_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", + "type": "object", + "properties": { + "pull_request_title_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + ] }, - "required": [ - "workflows" - ] - } - } - }, - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "code_scanning" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } - }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } - } + "required": [ + "pull_request_title_url" + ] + }, + { + "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", + "type": "object", + "properties": { + "pull_request_body_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + ] }, - "required": [ - "code_scanning_tools" - ] - } - } - }, - { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "copilot_code_review" - ] - }, - "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." - } + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] } - } - } - }, - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "license_compliance_scanning" - ] - } - } - }, - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_path_restriction" - ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } + "required": [ + "pull_request_body_url" + ] + }, + { + "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", + "type": "object", + "properties": { + "pull_request_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + ] }, - "required": [ - "restricted_file_paths" - ] - } - } - }, - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_path_length" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 - } + "required": [ + "pull_request_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", + "type": "object", + "properties": { + "pull_request_review_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + ] }, - "required": [ - "max_file_path_length" - ] - } - } - }, - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_extension_restriction" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } + "required": [ + "pull_request_review_url" + ] + }, + { + "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", + "type": "object", + "properties": { + "pull_request_review_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + ] }, - "required": [ - "restricted_file_extensions" - ] - } + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" + ] + } + }, + "required": [ + "pull_request_review_comment_url" + ] + } + ] + } + ] + }, + "has_more_locations": { + "type": "boolean", + "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." + }, + "assigned_to": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } }, - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_size" - ] - }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } - }, - "required": [ - "max_file_size" - ] - } + "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" + ] + } + ] + }, + "closure_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment from the closure request author." + }, + "closure_request_reviewer_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment from the closure request reviewer." + }, + "closure_request_reviewer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } + }, + "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" + ] + } + ] + }, + "metadata": { + "type": "array", + "description": "A list of metadata key/value pairs associated with the secret scanning alert.", + "readOnly": true, + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The metadata key." + }, + "value": { + "type": "string", + "description": "The metadata value." } + }, + "required": [ + "key", + "value" ] } - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" } } }, "examples": { "default": { "value": { - "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": [ + "number": 42, + "created_at": "2020-11-06T18:18:30Z", + "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42", + "html_url": "https://github.com/owner/private-repo/security/secret-scanning/42", + "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42/locations", + "state": "open", + "resolution": null, + "resolved_at": null, + "resolved_by": null, + "secret_type": "mailchimp_api_key", + "secret_type_display_name": "Mailchimp API Key", + "secret": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-us2", + "push_protection_bypassed_by": null, + "push_protection_bypassed": false, + "push_protection_bypassed_at": null, + "push_protection_bypass_request_reviewer": null, + "push_protection_bypass_request_reviewer_comment": null, + "push_protection_bypass_request_comment": null, + "push_protection_bypass_request_html_url": null, + "resolution_comment": null, + "validity": "unknown", + "publicly_leaked": false, + "multi_repo": false, + "metadata": [ { - "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" + "key": "owner_email", + "value": "owner@example.com" } - }, - "created_at": "2023-07-15T08:43:03Z", - "updated_at": "2023-08-23T16:29:47Z" + ] } } } } } }, + "304": { + "description": "Not modified" + }, "404": { - "description": "Resource not found", + "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" + }, + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { + "code": { "type": "string" }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } } } } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "secret-scanning" } }, - "put": { - "summary": "Update a repository ruleset", - "description": "Update a ruleset for a repository.", + "patch": { + "summary": "Update a secret scanning alert", + "description": "Updates the status of a secret scanning alert in an eligible repository.\n\nYou can also use this endpoint to assign or unassign an alert to a user who has write access to the repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "operationId": "secret-scanning/update-alert", "tags": [ - "repos" + "secret-scanning" ], - "operationId": "repos/update-repo-ruleset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#update-a-repository-ruleset" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#update-a-secret-scanning-alert" }, "parameters": [ { @@ -679021,3130 +694251,1681 @@ } }, { - "name": "ruleset_id", - "description": "The ID of the ruleset.", + "name": "alert_number", "in": "path", + "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", "required": true, "schema": { - "type": "integer" + "type": "integer", + "description": "The security alert number.", + "readOnly": true } } ], "requestBody": { - "description": "Request body", - "required": false, + "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { - "name": { + "state": { + "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", "type": "string", - "description": "The name of the ruleset." + "enum": [ + "open", + "resolved" + ] }, - "target": { - "type": "string", - "description": "The target of the ruleset", + "resolution": { + "type": [ + "string", + "null" + ], + "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", "enum": [ - "branch", - "tag", - "push" + "false_positive", + "wont_fix", + "revoked", + "used_in_tests", + null ] }, - "enforcement": { - "type": "string", - "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "resolution_comment": { + "description": "An optional comment when closing or reopening an alert. Cannot be updated or deleted.", + "type": [ + "string", + "null" + ] + }, + "assignee": { + "description": "The username of the user to assign to the alert. Set to `null` to unassign the alert.", + "type": [ + "string", + "null" + ] + }, + "validity": { + "type": [ + "string", + "null" + ], "enum": [ - "disabled", "active", - "evaluate" + "inactive", + null + ], + "description": "Sets the validity of the secret scanning alert. Can be `active`, `inactive`, or `null` to clear the override." + } + }, + "anyOf": [ + { + "required": [ + "state" ] }, - "bypass_actors": { - "type": "array", - "description": "The actors that can bypass the rules in this ruleset", - "items": { - "title": "Repository Ruleset Bypass Actor", - "type": "object", - "description": "An actor that can bypass rules in a ruleset", - "required": [ - "actor_type" - ], - "properties": { - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." - }, - "actor_type": { - "type": "string", - "enum": [ - "Integration", - "OrganizationAdmin", - "RepositoryRole", - "Team", - "DeployKey", - "User" - ], - "description": "The type of actor that can bypass a ruleset." + { + "required": [ + "assignee" + ] + }, + { + "required": [ + "validity" + ] + } + ] + }, + "examples": { + "default": { + "value": { + "state": "resolved", + "resolution": "false_positive" + } + }, + "assign": { + "summary": "Assign alert to a user", + "value": { + "assignee": "octocat" + } + }, + "unassign": { + "summary": "Unassign alert", + "value": { + "assignee": null + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "number": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + }, + "created_at": { + "type": "string", + "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "updated_at": { + "anyOf": [ + { + "type": "null" }, - "bypass_mode": { + { "type": "string", - "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", - "enum": [ - "always", - "pull_request", - "exempt" - ], - "default": "always" - } - } - } - }, - "conditions": { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } + "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true } - } - } - }, - "rules": { - "description": "An array of rules within the ruleset.", - "type": "array", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule.", - "oneOf": [ + ] + }, + "url": { + "type": "string", + "description": "The REST API URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "html_url": { + "type": "string", + "description": "The GitHub URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "locations_url": { + "type": "string", + "format": "uri", + "description": "The REST API URL of the code locations for this alert." + }, + "state": { + "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", + "type": "string", + "enum": [ + "open", + "resolved" + ] + }, + "resolution": { + "type": [ + "string", + "null" + ], + "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", + "enum": [ + "false_positive", + "wont_fix", + "revoked", + "used_in_tests", + null + ] + }, + "resolved_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "resolved_by": { + "anyOf": [ { - "title": "creation", - "description": "Only allow users with bypass permission to create matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "creation" - ] - } - } + "type": "null" }, { - "title": "update", - "description": "Only allow users with bypass permission to update matching refs.", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { - "type": { - "type": "string", - "enum": [ - "update" + "name": { + "type": [ + "string", + "null" ] }, - "parameters": { - "type": "object", - "properties": { - "update_allows_fetch_and_merge": { - "type": "boolean", - "description": "Branch can pull changes from its upstream repository" - } - }, - "required": [ - "update_allows_fetch_and_merge" + "email": { + "type": [ + "string", + "null" ] - } - } - }, - { - "title": "deletion", - "description": "Only allow users with bypass permissions to delete matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "login": { "type": "string", - "enum": [ - "deletion" + "examples": [ + "octocat" ] - } - } - }, - { - "title": "required_linear_history", - "description": "Prevent merge commits from being pushed to matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { "type": "string", - "enum": [ - "required_linear_history" + "examples": [ + "MDQ6VXNlcjE=" ] - } - } - }, - { - "title": "merge_queue", - "description": "Merges must be performed via a merge queue.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "avatar_url": { "type": "string", - "enum": [ - "merge_queue" + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" ] }, - "parameters": { - "type": "object", - "properties": { - "check_response_timeout_minutes": { - "type": "integer", - "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", - "minimum": 1, - "maximum": 360 - }, - "grouping_strategy": { - "type": "string", - "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", - "enum": [ - "ALLGREEN", - "HEADGREEN" - ] - }, - "max_entries_to_build": { - "type": "integer", - "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", - "minimum": 0, - "maximum": 100 - }, - "max_entries_to_merge": { - "type": "integer", - "description": "The maximum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "merge_method": { - "type": "string", - "description": "Method to use when merging changes from queued pull requests.", - "enum": [ - "MERGE", - "SQUASH", - "REBASE" - ] - }, - "min_entries_to_merge": { - "type": "integer", - "description": "The minimum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "min_entries_to_merge_wait_minutes": { - "type": "integer", - "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", - "minimum": 0, - "maximum": 360 - } - }, - "required": [ - "check_response_timeout_minutes", - "grouping_strategy", - "max_entries_to_build", - "max_entries_to_merge", - "merge_method", - "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" ] - } - } - }, - { - "title": "required_deployments", - "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "url": { "type": "string", - "enum": [ - "required_deployments" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" ] }, - "parameters": { - "type": "object", - "properties": { - "required_deployment_environments": { - "type": "array", - "description": "The environments that must be successfully deployed to before branches can be merged.", - "items": { - "type": "string" - } - } - }, - "required": [ - "required_deployment_environments" - ] - } - } - }, - { - "title": "required_signatures", - "description": "Commits pushed to matching refs must have verified signatures.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + "html_url": { "type": "string", - "enum": [ - "required_signatures" + "format": "uri", + "examples": [ + "https://github.com/octocat" ] - } - } - }, - { - "title": "pull_request", - "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "followers_url": { "type": "string", - "enum": [ - "pull_request" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" ] }, - "parameters": { - "type": "object", - "properties": { - "allowed_merge_methods": { - "type": "array", - "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", - "items": { - "type": "string", - "enum": [ - "merge", - "squash", - "rebase" - ] - } - }, - "dismiss_stale_reviews_on_push": { - "type": "boolean", - "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." - }, - "dismissal_restriction": { - "title": "DismissalRestriction", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "type": "object", - "properties": { - "allowed_actors": { - "type": "array", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "items": { - "title": "Actor", - "description": "An actor allowed to dismiss pull request reviews", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the actor that can dismiss reviews." - }, - "type": { - "type": "string", - "description": "The type of the actor", - "enum": [ - "User", - "Team", - "IntegrationInstallation", - "RepositoryRole" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "enabled": { - "type": "boolean", - "description": "Whether to restrict review dismissal to specific actors." - } - }, - "required": [ - "enabled" - ] - }, - "require_code_owner_review": { - "type": "boolean", - "description": "Require an approving review in pull requests that modify files that have a designated code owner." - }, - "require_last_push_approval": { - "type": "boolean", - "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." - }, - "required_approving_review_count": { - "type": "integer", - "description": "The number of approving reviews that are required before a pull request can be merged.", - "minimum": 0, - "maximum": 10 - }, - "required_review_thread_resolution": { - "type": "boolean", - "description": "All conversations on code must be resolved before a pull request can be merged." - }, - "required_reviewers": { - "type": "array", - "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", - "items": { - "title": "RequiredReviewerConfiguration", - "description": "A reviewing team, and file patterns describing which files they must approve changes to.", - "type": "object", - "properties": { - "file_patterns": { - "type": "array", - "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", - "items": { - "type": "string" - } - }, - "minimum_approvals": { - "type": "integer", - "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." - }, - "reviewer": { - "title": "Reviewer", - "description": "A required reviewing team", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the reviewer which must review changes to matching files." - }, - "type": { - "type": "string", - "description": "The type of the reviewer", - "enum": [ - "Team" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "required": [ - "file_patterns", - "minimum_approvals", - "reviewer" - ] - } - } - }, - "required": [ - "dismiss_stale_reviews_on_push", - "require_code_owner_review", - "require_last_push_approval", - "required_approving_review_count", - "required_review_thread_resolution" + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" ] - } - } - }, - { - "title": "required_status_checks", - "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "gists_url": { "type": "string", - "enum": [ - "required_status_checks" + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "required_status_checks": { - "type": "array", - "description": "Status checks that are required.", - "items": { - "title": "StatusCheckConfiguration", - "description": "Required status check", - "type": "object", - "properties": { - "context": { - "type": "string", - "description": "The status check context name that must be present on the commit." - }, - "integration_id": { - "type": "integer", - "description": "The optional integration ID that this status check must originate from." - } - }, - "required": [ - "context" - ] - } - }, - "strict_required_status_checks_policy": { - "type": "boolean", - "description": "Whether 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." - } - }, - "required": [ - "required_status_checks", - "strict_required_status_checks_policy" + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] - } - } - }, - { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "subscriptions_url": { "type": "string", - "enum": [ - "non_fast_forward" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" ] - } - } - }, - { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "organizations_url": { "type": "string", - "enum": [ - "commit_message_pattern" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" ] }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" ] - } - } - }, - { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "events_url": { "type": "string", - "enum": [ - "commit_author_email_pattern" + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" ] - } - } - }, - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { + }, "type": { "type": "string", - "enum": [ - "committer_email_pattern" + "examples": [ + "User" ] }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + "site_admin": { + "type": "boolean" + }, + "starred_at": { "type": "string", - "enum": [ - "branch_name_pattern" + "examples": [ + "\"2020-07-09T00:17:55Z\"" ] }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - } + }, + "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" + ] + } + ] + }, + "resolution_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment to resolve an alert." + }, + "secret_type": { + "type": "string", + "description": "The type of secret that secret scanning detected." + }, + "secret_type_display_name": { + "type": "string", + "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" + }, + "provider": { + "type": [ + "string", + "null" + ], + "description": "The provider of the secret that was detected." + }, + "provider_slug": { + "type": [ + "string", + "null" + ], + "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." + }, + "secret": { + "type": "string", + "description": "The secret that was detected." + }, + "push_protection_bypassed": { + "type": [ + "boolean", + "null" + ], + "description": "Whether push protection was bypassed for the detected secret." + }, + "push_protection_bypassed_by": { + "anyOf": [ + { + "type": "null" }, { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { - "type": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { "type": "string", - "enum": [ - "tag_name_pattern" + "examples": [ + "octocat" ] }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 ] - } - } - }, - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "node_id": { "type": "string", - "enum": [ - "workflows" + "examples": [ + "MDQ6VXNlcjE=" ] }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } - }, - "required": [ - "path", - "repository_id" - ] - } - } - }, - "required": [ - "workflows" + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" ] - } - } - }, - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "html_url": { "type": "string", - "enum": [ - "code_scanning" + "format": "uri", + "examples": [ + "https://github.com/octocat" ] }, - "parameters": { - "type": "object", - "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } - }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } - } - }, - "required": [ - "code_scanning_tools" + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" ] - } - } - }, - { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "following_url": { "type": "string", - "enum": [ - "copilot_code_review" + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." - } - } - } - } - }, - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + "gists_url": { "type": "string", - "enum": [ - "license_compliance_scanning" + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" ] - } - } - }, - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "starred_url": { "type": "string", - "enum": [ - "file_path_restriction" + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_paths" + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" ] - } - } - }, - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "organizations_url": { "type": "string", - "enum": [ - "max_file_path_length" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" ] }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 - } - }, - "required": [ - "max_file_path_length" + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" ] - } - } - }, - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "events_url": { "type": "string", - "enum": [ - "file_extension_restriction" + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_extensions" + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" ] - } - } - }, - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { + }, "type": { "type": "string", - "enum": [ - "max_file_size" + "examples": [ + "User" ] }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } - }, - "required": [ - "max_file_size" + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - } - } - ] - } - } - } - }, - "examples": { - "default": { - "value": { - "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" - } - } - ] - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Repository ruleset", - "type": "object", - "description": "A set of rules to apply when specified conditions are met.", - "required": [ - "id", - "name", - "source", - "enforcement" - ], - "properties": { - "id": { - "type": "integer", - "description": "The ID of the ruleset" - }, - "name": { - "type": "string", - "description": "The name of the ruleset" - }, - "target": { - "type": "string", - "description": "The target of the ruleset", - "enum": [ - "branch", - "tag", - "push", - "repository" - ] - }, - "source_type": { - "type": "string", - "description": "The type of the source of the ruleset", - "enum": [ - "Repository", - "Organization", - "Enterprise" - ] - }, - "source": { - "type": "string", - "description": "The name of the source" - }, - "enforcement": { - "type": "string", - "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", - "enum": [ - "disabled", - "active", - "evaluate" - ] - }, - "bypass_actors": { - "type": "array", - "description": "The actors that can bypass the rules in this ruleset", - "items": { - "title": "Repository Ruleset Bypass Actor", - "type": "object", - "description": "An actor that can bypass rules in a ruleset", - "required": [ - "actor_type" - ], - "properties": { - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." - }, - "actor_type": { - "type": "string", - "enum": [ - "Integration", - "OrganizationAdmin", - "RepositoryRole", - "Team", - "DeployKey", - "User" - ], - "description": "The type of actor that can bypass a ruleset." }, - "bypass_mode": { - "type": "string", - "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", - "enum": [ - "always", - "pull_request", - "exempt" - ], - "default": "always" - } + "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" + ] } - } - }, - "current_user_can_bypass": { - "type": "string", - "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", - "enum": [ - "always", - "pull_requests_only", - "never", - "exempt" ] }, - "node_id": { - "type": "string" - }, - "_links": { - "type": "object", - "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "The URL of the ruleset" - } - } - }, - "html": { - "type": [ - "object", - "null" - ], - "properties": { - "href": { - "type": "string", - "description": "The html URL of the ruleset" - } - } - } - } + "push_protection_bypassed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." }, - "conditions": { + "push_protection_bypass_request_reviewer": { "anyOf": [ { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } + "type": "null" }, { - "title": "Organization ruleset conditions", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", - "oneOf": [ - { - "type": "object", - "title": "repository_name_and_ref_name", - "description": "Conditions to target repositories by name and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository names", - "type": "object", - "description": "Parameters for a repository name condition", - "properties": { - "repository_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - }, - "protected": { - "type": "boolean", - "description": "Whether renaming of target repositories is prevented." - } - } - } - }, - "required": [ - "repository_name" - ] - } + "properties": { + "name": { + "type": [ + "string", + "null" ] }, - { - "type": "object", - "title": "repository_id_and_ref_name", - "description": "Conditions to target repositories by id and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository IDs", - "type": "object", - "description": "Parameters for a repository ID condition", - "properties": { - "repository_id": { - "type": "object", - "properties": { - "repository_ids": { - "type": "array", - "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", - "items": { - "type": "integer" - } - } - } - } - }, - "required": [ - "repository_id" - ] - } + "email": { + "type": [ + "string", + "null" ] }, - { - "type": "object", - "title": "repository_property_and_ref_name", - "description": "Conditions to target repositories by property and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository properties", - "type": "object", - "description": "Parameters for a repository property condition", - "properties": { - "repository_property": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - }, - "exclude": { - "type": "array", - "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - } - } - } - }, - "required": [ - "repository_property" - ] - } + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] - } - ] - } - ], - "type": [ - "null", - "object" - ] - }, - "rules": { - "type": "array", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule.", - "oneOf": [ - { - "title": "creation", - "description": "Only allow users with bypass permission to create matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "creation" - ] - } - } - }, - { - "title": "update", - "description": "Only allow users with bypass permission to update matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "update" - ] - }, - "parameters": { - "type": "object", - "properties": { - "update_allows_fetch_and_merge": { - "type": "boolean", - "description": "Branch can pull changes from its upstream repository" - } - }, - "required": [ - "update_allows_fetch_and_merge" - ] - } - } - }, - { - "title": "deletion", - "description": "Only allow users with bypass permissions to delete matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "deletion" - ] - } - } - }, - { - "title": "required_linear_history", - "description": "Prevent merge commits from being pushed to matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_linear_history" - ] - } - } - }, - { - "title": "merge_queue", - "description": "Merges must be performed via a merge queue.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "merge_queue" - ] - }, - "parameters": { - "type": "object", - "properties": { - "check_response_timeout_minutes": { - "type": "integer", - "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", - "minimum": 1, - "maximum": 360 - }, - "grouping_strategy": { - "type": "string", - "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", - "enum": [ - "ALLGREEN", - "HEADGREEN" - ] - }, - "max_entries_to_build": { - "type": "integer", - "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", - "minimum": 0, - "maximum": 100 - }, - "max_entries_to_merge": { - "type": "integer", - "description": "The maximum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "merge_method": { - "type": "string", - "description": "Method to use when merging changes from queued pull requests.", - "enum": [ - "MERGE", - "SQUASH", - "REBASE" - ] - }, - "min_entries_to_merge": { - "type": "integer", - "description": "The minimum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "min_entries_to_merge_wait_minutes": { - "type": "integer", - "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", - "minimum": 0, - "maximum": 360 - } - }, - "required": [ - "check_response_timeout_minutes", - "grouping_strategy", - "max_entries_to_build", - "max_entries_to_merge", - "merge_method", - "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" - ] - } } }, - { - "title": "required_deployments", - "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_deployments" - ] - }, - "parameters": { - "type": "object", - "properties": { - "required_deployment_environments": { - "type": "array", - "description": "The environments that must be successfully deployed to before branches can be merged.", - "items": { - "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" + ] + } + ] + }, + "push_protection_bypass_request_reviewer_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment when reviewing a push protection bypass." + }, + "push_protection_bypass_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment when requesting a push protection bypass." + }, + "push_protection_bypass_request_html_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "description": "The URL to a push protection bypass request." + }, + "validity": { + "type": "string", + "description": "The token status as of the latest validity check.", + "enum": [ + "active", + "inactive", + "unknown" + ] + }, + "publicly_leaked": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was publicly leaked." + }, + "multi_repo": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." + }, + "is_base64_encoded": { + "type": [ + "boolean", + "null" + ], + "description": "A boolean value representing whether or not alert is base64 encoded" + }, + "first_location_detected": { + "anyOf": [ + { + "type": "null" + }, + { + "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", + "oneOf": [ + { + "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The file path in the repository", + "examples": [ + "/example/secrets.txt" + ] }, - "required": [ - "required_deployment_environments" - ] - } - } - }, - { - "title": "required_signatures", - "description": "Commits pushed to matching refs must have verified signatures.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_signatures" - ] - } - } - }, - { - "title": "pull_request", - "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "pull_request" - ] - }, - "parameters": { - "type": "object", - "properties": { - "allowed_merge_methods": { - "type": "array", - "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", - "items": { - "type": "string", - "enum": [ - "merge", - "squash", - "rebase" - ] - } - }, - "dismiss_stale_reviews_on_push": { - "type": "boolean", - "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." - }, - "dismissal_restriction": { - "title": "DismissalRestriction", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "type": "object", - "properties": { - "allowed_actors": { - "type": "array", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "items": { - "title": "Actor", - "description": "An actor allowed to dismiss pull request reviews", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the actor that can dismiss reviews." - }, - "type": { - "type": "string", - "description": "The type of the actor", - "enum": [ - "User", - "Team", - "IntegrationInstallation", - "RepositoryRole" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "enabled": { - "type": "boolean", - "description": "Whether to restrict review dismissal to specific actors." - } - }, - "required": [ - "enabled" - ] - }, - "require_code_owner_review": { - "type": "boolean", - "description": "Require an approving review in pull requests that modify files that have a designated code owner." - }, - "require_last_push_approval": { - "type": "boolean", - "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." - }, - "required_approving_review_count": { - "type": "integer", - "description": "The number of approving reviews that are required before a pull request can be merged.", - "minimum": 0, - "maximum": 10 - }, - "required_review_thread_resolution": { - "type": "boolean", - "description": "All conversations on code must be resolved before a pull request can be merged." - }, - "required_reviewers": { - "type": "array", - "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", - "items": { - "title": "RequiredReviewerConfiguration", - "description": "A reviewing team, and file patterns describing which files they must approve changes to.", - "type": "object", - "properties": { - "file_patterns": { - "type": "array", - "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", - "items": { - "type": "string" - } - }, - "minimum_approvals": { - "type": "integer", - "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." - }, - "reviewer": { - "title": "Reviewer", - "description": "A required reviewing team", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the reviewer which must review changes to matching files." - }, - "type": { - "type": "string", - "description": "The type of the reviewer", - "enum": [ - "Team" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "required": [ - "file_patterns", - "minimum_approvals", - "reviewer" - ] - } - } + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "required": [ - "dismiss_stale_reviews_on_push", - "require_code_owner_review", - "require_last_push_approval", - "required_approving_review_count", - "required_review_thread_resolution" - ] - } - } - }, - { - "title": "required_status_checks", - "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_status_checks" - ] - }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "required_status_checks": { - "type": "array", - "description": "Status checks that are required.", - "items": { - "title": "StatusCheckConfiguration", - "description": "Required status check", - "type": "object", - "properties": { - "context": { - "type": "string", - "description": "The status check context name that must be present on the commit." - }, - "integration_id": { - "type": "integer", - "description": "The optional integration ID that this status check must originate from." - } - }, - "required": [ - "context" - ] - } - }, - "strict_required_status_checks_policy": { - "type": "boolean", - "description": "Whether 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." - } + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" }, - "required": [ - "required_status_checks", - "strict_required_status_checks_policy" - ] - } - } - }, - { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "non_fast_forward" - ] - } - } - }, - { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_message_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_author_email_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "committer_email_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "blob_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "branch_name_pattern" - ] + "blob_url": { + "type": "string", + "description": "The API URL to get the associated blob resource" + }, + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "commit_url": { + "type": "string", + "description": "The API URL to get the associated commit resource" + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL to get the associated commit resource.", + "examples": [ + "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "required": [ + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "blob_url", + "commit_sha", + "commit_url" + ] + }, + { + "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The file path of the wiki page", + "examples": [ + "/example/Home.md" + ] }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "tag_name_pattern" - ] + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" + }, + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" + }, + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." + }, + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." + }, + "blob_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "page_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki page", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + }, + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + }, + "commit_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki commit", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "required": [ + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "page_url", + "commit_sha", + "commit_url" + ] + }, + { + "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", + "type": "object", + "properties": { + "issue_title_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "workflows" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } - }, - "required": [ - "path", - "repository_id" - ] - } - } + "required": [ + "issue_title_url" + ] + }, + { + "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", + "type": "object", + "properties": { + "issue_body_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] }, - "required": [ - "workflows" - ] - } - } - }, - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "code_scanning" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } - }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } - } + "required": [ + "issue_body_url" + ] + }, + { + "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", + "type": "object", + "properties": { + "issue_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + ] }, - "required": [ - "code_scanning_tools" - ] - } - } - }, - { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "copilot_code_review" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." - } + "required": [ + "issue_comment_url" + ] + }, + { + "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", + "type": "object", + "properties": { + "discussion_title_url": { + "type": "string", + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082" + ] + } + }, + "required": [ + "discussion_title_url" + ] + }, + { + "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", + "type": "object", + "properties": { + "discussion_body_url": { + "type": "string", + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussion-4566270" + ] + } + }, + "required": [ + "discussion_body_url" + ] + }, + { + "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", + "type": "object", + "properties": { + "discussion_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the discussion comment where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + ] + } + }, + "required": [ + "discussion_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", + "type": "object", + "properties": { + "pull_request_title_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] } - } - } - }, - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "license_compliance_scanning" - ] - } - } - }, - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_path_restriction" - ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } + "required": [ + "pull_request_title_url" + ] + }, + { + "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", + "type": "object", + "properties": { + "pull_request_body_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + ] }, - "required": [ - "restricted_file_paths" - ] - } - } - }, - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_path_length" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 - } + "required": [ + "pull_request_body_url" + ] + }, + { + "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", + "type": "object", + "properties": { + "pull_request_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + ] }, - "required": [ - "max_file_path_length" - ] - } - } - }, - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_extension_restriction" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } + "required": [ + "pull_request_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", + "type": "object", + "properties": { + "pull_request_review_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + ] }, - "required": [ - "restricted_file_extensions" - ] - } - } - }, - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_size" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } + "required": [ + "pull_request_review_url" + ] + }, + { + "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", + "type": "object", + "properties": { + "pull_request_review_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + ] }, - "required": [ - "max_file_size" - ] - } + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" + ] + } + }, + "required": [ + "pull_request_review_comment_url" + ] } - } - ] - } - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - } - } - }, - "examples": { - "default": { - "value": { - "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" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - } - }, - "delete": { - "summary": "Delete a repository ruleset", - "description": "Delete a ruleset for a repository.", - "tags": [ - "repos" - ], - "operationId": "repos/delete-repo-ruleset", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ruleset_id", - "description": "The ID of the ruleset.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "204": { - "description": "Response" - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" + ] }, - "url": { - "type": "string" + "has_more_locations": { + "type": "boolean", + "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." }, - "status": { - "type": "string" - } - } - } - } - } - } - } - } - }, - "/repos/{owner}/{repo}/rulesets/{ruleset_id}/history": { - "get": { - "summary": "Get repository ruleset history", - "description": "Get the history of a repository ruleset.", - "tags": [ - "repos" - ], - "operationId": "repos/get-repo-ruleset-history", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#get-repository-ruleset-history" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "ruleset_id", - "description": "The ID of the ruleset.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Ruleset version", - "type": "object", - "description": "The historical version of a ruleset", - "required": [ - "version_id", - "actor", - "updated_at" - ], - "properties": { - "version_id": { - "type": "integer", - "description": "The ID of the previous version of the ruleset" - }, - "actor": { - "type": "object", - "description": "The actor who updated the ruleset", - "properties": { - "id": { - "type": "integer" + "assigned_to": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - "type": { - "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" + ] } - }, - "updated_at": { - "type": "string", - "format": "date-time" - } - } - } - }, - "examples": { - "default": { - "value": [ - { - "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" - } - ] - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" + ] }, - "url": { - "type": "string" + "closure_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment from the closure request author." }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" - } - } - }, - "/repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id}": { - "get": { - "summary": "Get repository ruleset version", - "description": "Get a version of a repository ruleset.", - "tags": [ - "repos" - ], - "operationId": "repos/get-repo-ruleset-version", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#get-repository-ruleset-version" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ruleset_id", - "description": "The ID of the ruleset.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "version_id", - "description": "The ID of the version", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "allOf": [ - { - "title": "Ruleset version", - "type": "object", - "description": "The historical version of a ruleset", - "required": [ - "version_id", - "actor", - "updated_at" + "closure_request_reviewer_comment": { + "type": [ + "string", + "null" ], - "properties": { - "version_id": { - "type": "integer", - "description": "The ID of the previous version of the ruleset" + "description": "An optional comment from the closure request reviewer." + }, + "closure_request_reviewer": { + "anyOf": [ + { + "type": "null" }, - "actor": { + { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "description": "The actor who updated the ruleset", "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, "id": { - "type": "integer" + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] }, "type": { - "type": "string" + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } - } - }, - "updated_at": { - "type": "string", - "format": "date-time" + }, + "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" + ] } - } + ] }, - { - "type": "object", - "required": [ - "state" - ], - "properties": { - "state": { - "type": "object", - "description": "The state of the ruleset version" - } + "metadata": { + "type": "array", + "description": "A list of metadata key/value pairs associated with the secret scanning alert.", + "readOnly": true, + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The metadata key." + }, + "value": { + "type": "string", + "description": "The metadata value." + } + }, + "required": [ + "key", + "value" + ] } } - ] + } }, "examples": { "default": { "value": { - "version_id": 3, - "actor": { - "id": 1, - "type": "User" + "number": 42, + "created_at": "2020-11-06T18:18:30Z", + "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42", + "html_url": "https://github.com/owner/private-repo/security/secret-scanning/42", + "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42/locations", + "state": "resolved", + "resolution": "used_in_tests", + "resolved_at": "2020-11-16T22:42:07Z", + "resolved_by": { + "login": "monalisa", + "id": 2, + "node_id": "MDQ6VXNlcjI=", + "avatar_url": "https://alambic.github.com/avatars/u/2?", + "gravatar_id": "", + "url": "https://api.github.com/users/monalisa", + "html_url": "https://github.com/monalisa", + "followers_url": "https://api.github.com/users/monalisa/followers", + "following_url": "https://api.github.com/users/monalisa/following{/other_user}", + "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", + "organizations_url": "https://api.github.com/users/monalisa/orgs", + "repos_url": "https://api.github.com/users/monalisa/repos", + "events_url": "https://api.github.com/users/monalisa/events{/privacy}", + "received_events_url": "https://api.github.com/users/monalisa/received_events", + "type": "User", + "site_admin": true }, - "updated_at": "2024-10-23T16:29:47Z", - "state": { - "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" - } - } - ] + "secret_type": "mailchimp_api_key", + "secret_type_display_name": "Mailchimp API Key", + "secret": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-us2", + "push_protection_bypassed": false, + "push_protection_bypassed_by": null, + "push_protection_bypassed_at": null, + "push_protection_bypass_request_reviewer": null, + "push_protection_bypass_request_reviewer_comment": null, + "push_protection_bypass_request_comment": null, + "push_protection_bypass_request_html_url": null, + "resolution_comment": "Example comment", + "validity": "unknown", + "publicly_leaked": false, + "multi_repo": false, + "metadata": [ + { + "key": "owner_email", + "value": "owner@example.com" + } + ], + "assigned_to": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://alambic.github.com/avatars/u/1?", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false } } } @@ -682152,52 +695933,33 @@ } } }, + "400": { + "description": "Bad request, resolution comment is invalid or the resolution was not changed." + }, + "403": { + "description": "Delegated alert dismissal is enabled and the authenticated user is not a valid reviewer." + }, "404": { - "description": "Resource not found", + "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" + }, + "422": { + "description": "State does not match the resolution or resolution comment, assignee does not have write access to the repository, or the requested validity change could not be applied to this alert" + }, + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { + "code": { "type": "string" }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -682206,24 +695968,24 @@ } }, "x-github": { - "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" + "githubCloudOnly": false, + "category": "secret-scanning", + "subcategory": "secret-scanning" } } }, - "/repos/{owner}/{repo}/secret-scanning/alerts": { + "/repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations": { "get": { - "summary": "List secret scanning alerts for a repository", - "description": "Lists secret scanning alerts for an eligible repository, from newest to oldest.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "summary": "List locations for a secret scanning alert", + "description": "Lists all locations for a given secret scanning alert for an eligible repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", "tags": [ "secret-scanning" ], - "operationId": "secret-scanning/list-alerts-for-repo", + "operationId": "secret-scanning/list-locations-for-alert", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-a-repository" + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#list-locations-for-a-secret-scanning-alert" }, "parameters": [ { @@ -682245,112 +696007,14 @@ } }, { - "name": "state", - "in": "query", - "description": "Set to `open` or `resolved` to only list secret scanning alerts in a specific state.", - "required": false, - "schema": { - "type": "string", - "enum": [ - "open", - "resolved" - ] - } - }, - { - "name": "secret_type", - "in": "query", - "description": "A comma-separated list of secret types to return. All default secret patterns are returned. To return generic patterns, pass the token name(s) in the parameter. See \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets)\" for a complete list of secret types.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "exclude_secret_types", - "in": "query", - "description": "A comma-separated list of secret types to exclude from the results. All default secret patterns are returned except those matching the specified types. Cannot be combined with the `secret_type` parameter. See \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets)\" for a complete list of secret types.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "exclude_providers", - "in": "query", - "description": "A comma-separated list of provider slugs to exclude from the results.\nProvider slugs use lowercase with underscores (e.g., `github_secret_scanning`, `clojars`).\nYou can find the provider slug in the `provider_slug` field of each alert.\nCannot be combined with the `providers` parameter.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "providers", - "in": "query", - "description": "A comma-separated list of provider slugs to filter by.\nProvider slugs use lowercase with underscores (e.g., `github_secret_scanning`, `clojars`).\nYou can find the provider slug in the `provider_slug` field of each alert.\nCannot be combined with the `exclude_providers` parameter.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "resolution", - "in": "query", - "description": "A comma-separated list of resolutions. Only secret scanning alerts with one of these resolutions are listed. Valid resolutions are `false_positive`, `wont_fix`, `revoked`, `pattern_edited`, `pattern_deleted` or `used_in_tests`.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "assignee", - "in": "query", - "description": "Filters alerts by assignee. Use `*` to get all assigned alerts, `none` to get all unassigned alerts, or a GitHub username to get alerts assigned to a specific user.", - "required": false, - "schema": { - "type": "string" - }, - "examples": { - "assigned-to-user": { - "value": "octocat", - "summary": "Filter for alerts assigned to the user \"octocat\"" - }, - "all-assigned": { - "value": "*", - "summary": "Filter for all assigned alerts" - }, - "all-unassigned": { - "value": "none", - "summary": "Filter for all unassigned alerts" - } - } - }, - { - "name": "sort", - "description": "The property to sort the results by. `created` means when the alert was created. `updated` means when the alert was updated or resolved.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "created", - "updated" - ], - "default": "created" - } - }, - { - "name": "direction", - "description": "The direction to sort the results by.", - "in": "query", - "required": false, + "name": "alert_number", + "in": "path", + "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", + "required": true, "schema": { - "type": "string", - "enum": [ - "asc", - "desc" - ], - "default": "desc" + "type": "integer", + "description": "The security alert number.", + "readOnly": true } }, { @@ -682370,90 +696034,6 @@ "type": "integer", "default": 30 } - }, - { - "name": "before", - "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for events before this cursor. To receive an initial cursor on your first request, include an empty \"before\" query string.", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "after", - "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for events after this cursor. To receive an initial cursor on your first request, include an empty \"after\" query string.", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "validity", - "in": "query", - "description": "A comma-separated list of validities that, when present, will return alerts that match the validities in this list. Valid options are `active`, `inactive`, and `unknown`.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "is_publicly_leaked", - "in": "query", - "description": "A boolean value representing whether or not to filter alerts by the publicly-leaked tag being present.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "is_multi_repo", - "in": "query", - "description": "A boolean value representing whether or not to filter alerts by the multi-repo tag being present.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "hide_secret", - "in": "query", - "description": "A boolean value representing whether or not to hide literal secrets in the results.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "is_bypassed", - "in": "query", - "description": "A boolean value (`true` or `false`) indicating whether to filter alerts by their push protection bypass status. When set to `true`, only alerts that were created because a push protection rule was bypassed will be returned. When set to `false`, only alerts that were not caused by a push protection bypass will be returned.", - "required": false, - "schema": { - "type": "boolean" - } - }, - { - "name": "included_metadata", - "in": "query", - "description": "A comma-separated list of metadata fields to filter alerts by. Only alerts that have all of the\nspecified metadata fields attached will be returned. Possible values are: `owner-email`, `owner-id`,\n`owner-name`, `secret-id`, `secret-name`, `secret-issued-date`, `secret-expiration-date`, `organization-name`,\n`organization-id`, `last-used-date`, and `has-organization-access`.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "owner_email_hash", - "in": "query", - "description": "Filters alerts to only those whose attached `owner_email` metadata field matches the\nprovided value. The value must be the lowercase hex-encoded SHA-256 hash of the email\naddress to match (for example, the SHA-256 of `user@example.com`). Only alerts that\nhave an `owner_email` metadata value whose SHA-256 hash equals this parameter are\nreturned.", - "required": false, - "schema": { - "type": "string" - } } ], "responses": { @@ -682463,1470 +696043,421 @@ "application/json": { "schema": { "type": "array", + "description": "List of locations where the secret was detected", "items": { "type": "object", "properties": { - "number": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - }, - "created_at": { - "type": "string", - "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "updated_at": { - "anyOf": [ - { - "type": "null" - }, - { - "type": "string", - "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - } - ] - }, - "url": { - "type": "string", - "description": "The REST API URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "html_url": { - "type": "string", - "description": "The GitHub URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "locations_url": { - "type": "string", - "format": "uri", - "description": "The REST API URL of the code locations for this alert." - }, - "state": { - "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", + "type": { "type": "string", "enum": [ - "open", - "resolved" - ] - }, - "resolution": { - "type": [ - "string", - "null" - ], - "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", - "enum": [ - "false_positive", - "wont_fix", - "revoked", - "used_in_tests", - null - ] - }, - "resolved_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "resolved_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "resolution_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment to resolve an alert." - }, - "secret_type": { - "type": "string", - "description": "The type of secret that secret scanning detected." - }, - "secret_type_display_name": { - "type": "string", - "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" - }, - "provider": { - "type": [ - "string", - "null" - ], - "description": "The provider of the secret that was detected." - }, - "provider_slug": { - "type": [ - "string", - "null" - ], - "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." - }, - "secret": { - "type": "string", - "description": "The secret that was detected." - }, - "push_protection_bypassed": { - "type": [ - "boolean", - "null" + "commit", + "wiki_commit", + "issue_title", + "issue_body", + "issue_comment", + "discussion_title", + "discussion_body", + "discussion_comment", + "pull_request_title", + "pull_request_body", + "pull_request_comment", + "pull_request_review", + "pull_request_review_comment" ], - "description": "Whether push protection was bypassed for the detected secret." - }, - "push_protection_bypassed_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "description": "The location type. Because secrets may be found in different types of resources (ie. code, comments, issues, pull requests, discussions), this field identifies the type of resource where the secret was found.", + "examples": [ + "commit" ] }, - "push_protection_bypassed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "push_protection_bypass_request_reviewer": { - "anyOf": [ - { - "type": "null" - }, + "details": { + "oneOf": [ { - "title": "Simple User", - "description": "A GitHub user.", + "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { + "path": { "type": "string", + "description": "The file path in the repository", "examples": [ - "MDQ6VXNlcjE=" + "/example/secrets.txt" ] }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" }, - "followers_url": { + "blob_sha": { "type": "string", - "format": "uri", + "description": "SHA-1 hash ID of the associated blob", "examples": [ - "https://api.github.com/users/octocat/followers" + "af5626b4a114abcb82d63db7c8082c3c4756e51b" ] }, - "following_url": { + "blob_url": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] + "description": "The API URL to get the associated blob resource" }, - "gists_url": { + "commit_sha": { "type": "string", + "description": "SHA-1 hash ID of the associated commit", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "af5626b4a114abcb82d63db7c8082c3c4756e51b" ] }, - "starred_url": { + "commit_url": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] + "description": "The API URL to get the associated commit resource" }, - "subscriptions_url": { + "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL to get the associated commit resource.", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" ] - }, - "organizations_url": { + } + }, + "required": [ + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "blob_url", + "commit_sha", + "commit_url" + ] + }, + { + "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", + "type": "object", + "properties": { + "path": { "type": "string", - "format": "uri", + "description": "The file path of the wiki page", "examples": [ - "https://api.github.com/users/octocat/orgs" + "/example/Home.md" ] }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" }, - "received_events_url": { + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." + }, + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." + }, + "blob_sha": { "type": "string", - "format": "uri", + "description": "SHA-1 hash ID of the associated blob", "examples": [ - "https://api.github.com/users/octocat/received_events" + "af5626b4a114abcb82d63db7c8082c3c4756e51b" ] }, - "type": { + "page_url": { "type": "string", + "description": "The GitHub URL to get the associated wiki page", "examples": [ - "User" + "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { + "commit_sha": { "type": "string", + "description": "SHA-1 hash ID of the associated commit", "examples": [ - "\"2020-07-09T00:17:55Z\"" + "302c0b7e200761c9dd9b57e57db540ee0b4293a5" ] }, - "user_view_type": { + "commit_url": { "type": "string", + "description": "The GitHub URL to get the associated wiki commit", "examples": [ - "public" + "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" ] } }, "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" - ] - } - ] - }, - "push_protection_bypass_request_reviewer_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment when reviewing a push protection bypass." - }, - "push_protection_bypass_request_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment when requesting a push protection bypass." - }, - "push_protection_bypass_request_html_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "description": "The URL to a push protection bypass request." - }, - "validity": { - "type": "string", - "description": "The token status as of the latest validity check.", - "enum": [ - "active", - "inactive", - "unknown" - ] - }, - "publicly_leaked": { - "type": [ - "boolean", - "null" - ], - "description": "Whether the detected secret was publicly leaked." - }, - "multi_repo": { - "type": [ - "boolean", - "null" - ], - "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." - }, - "is_base64_encoded": { - "type": [ - "boolean", - "null" - ], - "description": "A boolean value representing whether or not alert is base64 encoded" - }, - "first_location_detected": { - "anyOf": [ - { - "type": "null" - }, - { - "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", - "oneOf": [ - { - "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The file path in the repository", - "examples": [ - "/example/secrets.txt" - ] - }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "blob_url": { - "type": "string", - "description": "The API URL to get the associated blob resource" - }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "commit_url": { - "type": "string", - "description": "The API URL to get the associated commit resource" - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL to get the associated commit resource.", - "examples": [ - "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" - ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "blob_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The file path of the wiki page", - "examples": [ - "/example/Home.md" - ] - }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "page_url": { - "type": "string", - "description": "The GitHub URL to get the associated wiki page", - "examples": [ - "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", - "examples": [ - "302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - }, - "commit_url": { - "type": "string", - "description": "The GitHub URL to get the associated wiki commit", - "examples": [ - "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "page_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", - "type": "object", - "properties": { - "issue_title_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } - }, - "required": [ - "issue_title_url" - ] - }, - { - "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", - "type": "object", - "properties": { - "issue_body_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } - }, - "required": [ - "issue_body_url" - ] - }, - { - "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", - "type": "object", - "properties": { - "issue_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" - ] - } - }, - "required": [ - "issue_comment_url" - ] - }, - { - "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", - "type": "object", - "properties": { - "discussion_title_url": { - "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082" - ] - } - }, - "required": [ - "discussion_title_url" - ] - }, - { - "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", - "type": "object", - "properties": { - "discussion_body_url": { - "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082#discussion-4566270" - ] - } - }, - "required": [ - "discussion_body_url" - ] - }, - { - "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", - "type": "object", - "properties": { - "discussion_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the discussion comment where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082#discussioncomment-4158232" - ] - } - }, - "required": [ - "discussion_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", - "type": "object", - "properties": { - "pull_request_title_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" - ] - } - }, - "required": [ - "pull_request_title_url" - ] - }, - { - "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", - "type": "object", - "properties": { - "pull_request_body_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" - ] - } - }, - "required": [ - "pull_request_body_url" - ] - }, - { - "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", - "type": "object", - "properties": { - "pull_request_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" - ] - } - }, - "required": [ - "pull_request_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", - "type": "object", - "properties": { - "pull_request_review_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" - ] - } - }, - "required": [ - "pull_request_review_url" - ] - }, - { - "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", - "type": "object", - "properties": { - "pull_request_review_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" - ] - } - }, - "required": [ - "pull_request_review_comment_url" - ] - } + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "page_url", + "commit_sha", + "commit_url" ] - } - ] - }, - "has_more_locations": { - "type": "boolean", - "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." - }, - "assigned_to": { - "anyOf": [ - { - "type": "null" }, { - "title": "Simple User", - "description": "A GitHub user.", + "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { + "issue_title_url": { "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", "examples": [ - "MDQ6VXNlcjE=" + "https://api.github.com/repos/octocat/Hello-World/issues/1347" ] }, - "avatar_url": { + "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "https://github.com/octocat/Hello-World/issues/1" ] - }, - "url": { + } + }, + "required": [ + "issue_title_url" + ] + }, + { + "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", + "type": "object", + "properties": { + "issue_body_url": { "type": "string", "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat" + "https://api.github.com/repos/octocat/Hello-World/issues/1347" ] }, "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", "examples": [ - "https://github.com/octocat" + "https://github.com/octocat/Hello-World/issues/1" ] - }, - "followers_url": { + } + }, + "required": [ + "issue_body_url" + ] + }, + { + "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", + "type": "object", + "properties": { + "issue_comment_url": { "type": "string", "format": "uri", + "description": "The API URL to get the issue comment where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" ] }, - "subscriptions_url": { + "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL for the issue comment where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" ] - }, - "organizations_url": { + } + }, + "required": [ + "issue_comment_url" + ] + }, + { + "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", + "type": "object", + "properties": { + "discussion_title_url": { "type": "string", "format": "uri", + "description": "The URL to the discussion where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/orgs" + "https://github.com/community/community/discussions/39082" ] - }, - "repos_url": { + } + }, + "required": [ + "discussion_title_url" + ] + }, + { + "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", + "type": "object", + "properties": { + "discussion_body_url": { "type": "string", "format": "uri", + "description": "The URL to the discussion where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "https://github.com/community/community/discussions/39082#discussion-4566270" ] - }, - "received_events_url": { + } + }, + "required": [ + "discussion_body_url" + ] + }, + { + "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", + "type": "object", + "properties": { + "discussion_comment_url": { "type": "string", "format": "uri", + "description": "The API URL to get the discussion comment where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "https://github.com/community/community/discussions/39082#discussioncomment-4158232" ] } }, "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" + "discussion_comment_url" ] - } - ] - }, - "closure_request_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment from the closure request author." - }, - "closure_request_reviewer_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment from the closure request reviewer." - }, - "closure_request_reviewer": { - "anyOf": [ - { - "type": "null" }, { - "title": "Simple User", - "description": "A GitHub user.", + "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { + "pull_request_title_url": { "type": "string", + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", "examples": [ - "MDQ6VXNlcjE=" + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" ] }, - "avatar_url": { + "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "https://github.com/octocat/Hello-World/pull/2846" ] - }, - "url": { + } + }, + "required": [ + "pull_request_title_url" + ] + }, + { + "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", + "type": "object", + "properties": { + "pull_request_body_url": { "type": "string", "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat" + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" ] }, "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", "examples": [ - "https://github.com/octocat" + "https://github.com/octocat/Hello-World/pull/2846" ] - }, - "followers_url": { + } + }, + "required": [ + "pull_request_body_url" + ] + }, + { + "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", + "type": "object", + "properties": { + "pull_request_comment_url": { "type": "string", "format": "uri", + "description": "The API URL to get the pull request comment where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" ] }, - "subscriptions_url": { + "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL for the pull request comment where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" ] - }, - "organizations_url": { + } + }, + "required": [ + "pull_request_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", + "type": "object", + "properties": { + "pull_request_review_url": { "type": "string", "format": "uri", + "description": "The API URL to get the pull request review where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/orgs" + "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" ] }, - "repos_url": { + "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL for the pull request review where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" ] - }, - "received_events_url": { + } + }, + "required": [ + "pull_request_review_url" + ] + }, + { + "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", + "type": "object", + "properties": { + "pull_request_review_comment_url": { "type": "string", "format": "uri", + "description": "The API URL to get the pull request review comment where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" ] }, - "user_view_type": { + "html_url": { "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review comment where the secret was detected.", "examples": [ - "public" + "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" ] } }, "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_review_comment_url" ] } ] @@ -683938,88 +696469,8 @@ "default": { "value": [ { - "number": 2, - "created_at": "2020-11-06T18:48:51Z", - "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/2", - "html_url": "https://github.com/owner/private-repo/security/secret-scanning/2", - "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/2/locations", - "state": "resolved", - "resolution": "false_positive", - "resolved_at": "2020-11-07T02:47:13Z", - "resolved_by": { - "login": "monalisa", - "id": 2, - "node_id": "MDQ6VXNlcjI=", - "avatar_url": "https://alambic.github.com/avatars/u/2?", - "gravatar_id": "", - "url": "https://api.github.com/users/monalisa", - "html_url": "https://github.com/monalisa", - "followers_url": "https://api.github.com/users/monalisa/followers", - "following_url": "https://api.github.com/users/monalisa/following{/other_user}", - "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", - "organizations_url": "https://api.github.com/users/monalisa/orgs", - "repos_url": "https://api.github.com/users/monalisa/repos", - "events_url": "https://api.github.com/users/monalisa/events{/privacy}", - "received_events_url": "https://api.github.com/users/monalisa/received_events", - "type": "User", - "site_admin": true - }, - "secret_type": "adafruit_io_key", - "secret_type_display_name": "Adafruit IO Key", - "secret": "aio_XXXXXXXXXXXXXXXXXXXXXXXXXXXX", - "push_protection_bypassed_by": { - "login": "monalisa", - "id": 2, - "node_id": "MDQ6VXNlcjI=", - "avatar_url": "https://alambic.github.com/avatars/u/2?", - "gravatar_id": "", - "url": "https://api.github.com/users/monalisa", - "html_url": "https://github.com/monalisa", - "followers_url": "https://api.github.com/users/monalisa/followers", - "following_url": "https://api.github.com/users/monalisa/following{/other_user}", - "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", - "organizations_url": "https://api.github.com/users/monalisa/orgs", - "repos_url": "https://api.github.com/users/monalisa/repos", - "events_url": "https://api.github.com/users/monalisa/events{/privacy}", - "received_events_url": "https://api.github.com/users/monalisa/received_events", - "type": "User", - "site_admin": true - }, - "push_protection_bypassed": true, - "push_protection_bypassed_at": "2020-11-06T21:48:51Z", - "push_protection_bypass_request_reviewer": { - "login": "octocat", - "id": 3, - "node_id": "MDQ6VXNlcjI=", - "avatar_url": "https://alambic.github.com/avatars/u/3?", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": true - }, - "push_protection_bypass_request_reviewer_comment": "Example response", - "push_protection_bypass_request_comment": "Example comment", - "push_protection_bypass_request_html_url": "https://github.com/owner/repo/secret_scanning_exemptions/1", - "resolution_comment": "Example comment", - "validity": "inactive", - "publicly_leaked": false, - "multi_repo": false, - "is_base64_encoded": false, - "first_location_detected": { + "type": "commit", + "details": { "path": "/example/secrets.txt", "start_line": 1, "end_line": 1, @@ -684029,79 +696480,1170 @@ "blob_url": "https://api.github.com/repos/octocat/hello-world/git/blobs/af5626b4a114abcb82d63db7c8082c3c4756e51b", "commit_sha": "f14d7debf9775f957cf4f1e8176da0786431f72b", "commit_url": "https://api.github.com/repos/octocat/hello-world/git/commits/f14d7debf9775f957cf4f1e8176da0786431f72b" + } + }, + { + "type": "wiki_commit", + "details": { + "path": "/example/Home.md", + "start_line": 1, + "end_line": 1, + "start_column": 1, + "end_column": 64, + "blob_sha": "af5626b4a114abcb82d63db7c8082c3c4756e51b", + "page_url": "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5", + "commit_sha": "302c0b7e200761c9dd9b57e57db540ee0b4293a5", + "commit_url": "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + } + }, + { + "type": "issue_title", + "details": { + "issue_title_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347" + } + }, + { + "type": "issue_body", + "details": { + "issue_body_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347" + } + }, + { + "type": "issue_comment", + "details": { + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + } + }, + { + "type": "discussion_title", + "details": { + "discussion_title_url": "https://github.com/community/community/discussions/39082" + } + }, + { + "type": "discussion_body", + "details": { + "discussion_body_url": "https://github.com/community/community/discussions/39082#discussion-4566270" + } + }, + { + "type": "discussion_comment", + "details": { + "discussion_comment_url": "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + } + }, + { + "type": "pull_request_title", + "details": { + "pull_request_title_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + } + }, + { + "type": "pull_request_body", + "details": { + "pull_request_body_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + } + }, + { + "type": "pull_request_comment", + "details": { + "pull_request_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments/1825855898" + } + }, + { + "type": "pull_request_review", + "details": { + "pull_request_review_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + } + }, + { + "type": "pull_request_review_comment", + "details": { + "pull_request_review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + } + } + ] + } + } + } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } + } + }, + "404": { + "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "secret-scanning" + } + } + }, + "/repos/{owner}/{repo}/secret-scanning/custom-patterns": { + "get": { + "summary": "List repository custom patterns", + "description": "Lists secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "tags": [ + "secret-scanning" + ], + "operationId": "secret-scanning/list-repo-custom-patterns", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#list-repository-custom-patterns" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "custom-patterns" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "state", + "description": "Filter custom patterns by state. When absent, returns patterns in all states.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "published", + "unpublished" + ] + } + }, + { + "name": "push_protection", + "description": "Filter custom patterns by whether push protection is enabled. When absent, returns patterns regardless of push protection status.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + }, + { + "name": "sort", + "description": "The property to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created", + "updated", + "name" + ], + "default": "created" + } + }, + { + "name": "direction", + "description": "The direction to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "desc" + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Secret Scanning Custom Pattern", + "description": "A custom pattern for secret scanning.", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "The ID of the custom pattern." + }, + "name": { + "type": "string", + "description": "The name of the custom pattern." + }, + "pattern": { + "type": "string", + "description": "The regular expression of the custom pattern." + }, + "slug": { + "type": "string", + "description": "A URL-friendly identifier for the custom pattern, derived from its name." + }, + "state": { + "type": "string", + "description": "The state of the custom pattern.", + "enum": [ + "published", + "unpublished" + ] + }, + "push_protection_enabled": { + "type": "boolean", + "description": "Whether push protection is enabled for this custom pattern." + }, + "start_delimiter": { + "type": [ + "string", + "null" + ], + "description": "The start delimiter regex for the custom pattern." + }, + "end_delimiter": { + "type": [ + "string", + "null" + ], + "description": "The end delimiter regex for the custom pattern." + }, + "must_match": { + "type": [ + "array", + "null" + ], + "description": "List of regexes that the secret must match.", + "items": { + "type": "string" + } + }, + "must_not_match": { + "type": [ + "array", + "null" + ], + "description": "List of regexes that the secret must not match.", + "items": { + "type": "string" + } + }, + "custom_pattern_version": { + "type": [ + "string", + "null" + ], + "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + }, + "created_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was created in ISO 8601 format." + }, + "updated_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was last updated in ISO 8601 format." + } + }, + "required": [ + "id", + "name", + "pattern", + "slug", + "state", + "push_protection_enabled" + ] + } + }, + "examples": { + "default": { + "value": [ + { + "id": 1, + "name": "Example Custom Pattern", + "pattern": "[a-z]+_token_[0-9]+", + "slug": "example-custom-pattern", + "state": "published", + "push_protection_enabled": true, + "start_delimiter": null, + "end_delimiter": null, + "must_match": null, + "must_not_match": null, + "created_at": "2024-01-15T10:30:00Z", + "updated_at": "2024-01-15T10:30:00Z" + }, + { + "id": 2, + "name": "Another Custom Pattern", + "pattern": "prefix_[a-zA-Z0-9]{32}", + "slug": "another-custom-pattern", + "state": "published", + "push_protection_enabled": false, + "start_delimiter": "\\b", + "end_delimiter": "\\b", + "must_match": [ + "^prefix_prod" + ], + "must_not_match": [ + "test" + ], + "created_at": "2024-01-16T14:20:00Z", + "updated_at": "2024-01-17T09:15:00Z" + } + ] + } + } + } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + } + }, + "post": { + "summary": "Bulk create repository custom patterns", + "description": "Bulk creates secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "tags": [ + "secret-scanning" + ], + "operationId": "secret-scanning/bulk-create-repo-custom-patterns", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#bulk-create-repository-custom-patterns" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "custom-patterns" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "patterns" + ], + "properties": { + "patterns": { + "type": "array", + "description": "The list of custom patterns to create.", + "items": { + "title": "Secret Scanning Custom Pattern To Create", + "description": "A custom pattern to create in a bulk operation.", + "type": "object", + "required": [ + "name", + "pattern" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the custom pattern." + }, + "pattern": { + "type": "string", + "description": "The regular expression of the custom pattern." + }, + "start_delimiter": { + "type": "string", + "description": "The start delimiter regex for the custom pattern.\nDefaults to `\\A|[^0-9A-Za-z]` when not specified.", + "default": "\\A|[^0-9A-Za-z]" + }, + "end_delimiter": { + "type": "string", + "description": "The end delimiter regex for the custom pattern.\nDefaults to `\\z|[^0-9A-Za-z]` when not specified.", + "default": "\\z|[^0-9A-Za-z]" + }, + "must_match": { + "type": "array", + "description": "List of regexes that the secret must match.", + "items": { + "type": "string" + } + }, + "must_not_match": { + "type": "array", + "description": "List of regexes that the secret must not match.", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "examples": { + "default": { + "value": { + "patterns": [ + { + "name": "Example Custom Pattern", + "pattern": "[a-z]+_token_[0-9]+" + }, + { + "name": "Another Custom Pattern", + "pattern": "prefix_[a-zA-Z0-9]{32}", + "start_delimiter": "\\b", + "end_delimiter": "\\b", + "must_match": [ + "^prefix_prod" + ], + "must_not_match": [ + "test" + ] + } + ] + } + } + } + } + } + }, + "responses": { + "201": { + "description": "All patterns created successfully.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "created_patterns": { + "type": "array", + "description": "The list of successfully created custom patterns.", + "items": { + "title": "Secret Scanning Custom Pattern", + "description": "A custom pattern for secret scanning.", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "The ID of the custom pattern." + }, + "name": { + "type": "string", + "description": "The name of the custom pattern." + }, + "pattern": { + "type": "string", + "description": "The regular expression of the custom pattern." + }, + "slug": { + "type": "string", + "description": "A URL-friendly identifier for the custom pattern, derived from its name." + }, + "state": { + "type": "string", + "description": "The state of the custom pattern.", + "enum": [ + "published", + "unpublished" + ] + }, + "push_protection_enabled": { + "type": "boolean", + "description": "Whether push protection is enabled for this custom pattern." + }, + "start_delimiter": { + "type": [ + "string", + "null" + ], + "description": "The start delimiter regex for the custom pattern." + }, + "end_delimiter": { + "type": [ + "string", + "null" + ], + "description": "The end delimiter regex for the custom pattern." + }, + "must_match": { + "type": [ + "array", + "null" + ], + "description": "List of regexes that the secret must match.", + "items": { + "type": "string" + } + }, + "must_not_match": { + "type": [ + "array", + "null" + ], + "description": "List of regexes that the secret must not match.", + "items": { + "type": "string" + } + }, + "custom_pattern_version": { + "type": [ + "string", + "null" + ], + "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + }, + "created_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was created in ISO 8601 format." + }, + "updated_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was last updated in ISO 8601 format." + } + }, + "required": [ + "id", + "name", + "pattern", + "slug", + "state", + "push_protection_enabled" + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "created_patterns": [ + { + "id": 1, + "name": "Example Custom Pattern", + "pattern": "[a-z]+_token_[0-9]+", + "slug": "example-custom-pattern", + "state": "unpublished", + "push_protection_enabled": false, + "start_delimiter": null, + "end_delimiter": null, + "must_match": null, + "must_not_match": null, + "created_at": "2024-01-15T10:30:00Z", + "updated_at": "2024-01-15T10:30:00Z" + }, + { + "id": 2, + "name": "Another Custom Pattern", + "pattern": "prefix_[a-zA-Z0-9]{32}", + "slug": "another-custom-pattern", + "state": "unpublished", + "push_protection_enabled": false, + "start_delimiter": "\\b", + "end_delimiter": "\\b", + "must_match": [ + "^prefix_prod" + ], + "must_not_match": [ + "test" + ], + "created_at": "2024-01-15T10:30:00Z", + "updated_at": "2024-01-15T10:30:00Z" + } + ] + } + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { + "type": [ + "string", + "null" + ] + }, + "documentation_url": { + "type": [ + "string", + "null" + ] + }, + "detail": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": "integer" + }, + "scimType": { + "type": [ + "string", + "null" + ] + }, + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed for one or more patterns.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "A summary message describing the error." + }, + "validation_errors": { + "type": "object", + "description": "A map of validation errors keyed by the zero-based index of the pattern that failed.", + "additionalProperties": { + "type": "object", + "properties": { + "errors": { + "type": "array", + "description": "List of validation errors for this pattern.", + "items": { + "title": "Secret Scanning Custom Pattern Validation Error", + "description": "A validation error for a custom pattern in a batch operation.", + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "A machine-readable code describing the error.", + "enum": [ + "invalid", + "unprocessable", + "start_delimiter", + "end_delimiter", + "name", + "must_match", + "must_not_match", + "custom_pattern_version_mismatch" + ] + }, + "message": { + "type": "string", + "description": "A human-readable description of the error." + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "delete": { + "summary": "Bulk delete repository custom patterns", + "description": "Bulk deletes secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "tags": [ + "secret-scanning" + ], + "operationId": "secret-scanning/bulk-delete-repo-custom-patterns", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#bulk-delete-repository-custom-patterns" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "custom-patterns" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "patterns" + ], + "properties": { + "patterns": { + "type": "array", + "description": "The list of custom patterns to delete.", + "maxItems": 500, + "items": { + "title": "Secret Scanning Custom Pattern To Delete", + "description": "A custom pattern to delete in a bulk operation.", + "type": "object", + "required": [ + "pattern_id" + ], + "properties": { + "pattern_id": { + "type": "integer", + "description": "The ID of the custom pattern to delete." }, - "has_more_locations": true, - "assigned_to": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "custom_pattern_version": { + "type": [ + "string", + "null" + ], + "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." } } + } + }, + "post_delete_action": { + "type": "string", + "description": "What to do with alerts associated with the deleted patterns.\n`delete_alerts` permanently removes the alerts.\n`resolve_alerts` resolves the alerts as \"pattern deleted\".\nDefaults to `delete_alerts` when not specified.", + "enum": [ + "delete_alerts", + "resolve_alerts" + ], + "default": "delete_alerts" + } + } + }, + "examples": { + "default": { + "value": { + "patterns": [ + { + "pattern_id": 2, + "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K" + } ] } } } } + } + }, + "responses": { + "204": { + "description": "All patterns deleted successfully." }, - "404": { - "description": "Repository is public or secret scanning is disabled for the repository" + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { + "type": [ + "string", + "null" + ] + }, + "documentation_url": { + "type": [ + "string", + "null" + ] + }, + "detail": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": "integer" + }, + "scimType": { + "type": [ + "string", + "null" + ] + }, + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } }, - "503": { - "description": "Service unavailable", + "403": { + "description": "Forbidden", "content": { "application/json": { "schema": { + "title": "Basic Error", + "description": "Basic Error", "type": "object", "properties": { - "code": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { "type": "string" }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "412": { + "description": "Precondition Failed", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { "message": { "type": "string" }, "documentation_url": { "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" } } } } } } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "secret-scanning" } } }, - "/repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}": { - "get": { - "summary": "Get a secret scanning alert", - "description": "Gets a single secret scanning alert detected in an eligible repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "/repos/{owner}/{repo}/secret-scanning/custom-patterns/{pattern_id}": { + "patch": { + "summary": "Update a repository custom pattern", + "description": "Updates a secret scanning custom pattern for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", "tags": [ "secret-scanning" ], - "operationId": "secret-scanning/get-alert", + "operationId": "secret-scanning/update-repo-custom-pattern", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#get-a-secret-scanning-alert" + "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#update-a-repository-custom-pattern" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "custom-patterns" }, "parameters": [ { @@ -684123,1567 +697665,576 @@ } }, { - "name": "alert_number", + "name": "pattern_id", "in": "path", - "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", "required": true, "schema": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - } - }, - { - "name": "hide_secret", - "in": "query", - "description": "A boolean value representing whether or not to hide literal secrets in the results.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } + "type": "integer" + }, + "description": "The ID of the custom pattern." } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "title": "Secret Scanning Custom Pattern To Update", + "description": "Fields to update on a custom pattern. At least one updatable field (`pattern`, `start_delimiter`, `end_delimiter`, `must_match`, or `must_not_match`) must also be provided. Only provided fields will be updated.", + "required": [ + "custom_pattern_version" + ], + "anyOf": [ + { + "required": [ + "pattern" + ] + }, + { + "required": [ + "start_delimiter" + ] + }, + { + "required": [ + "end_delimiter" + ] + }, + { + "required": [ + "must_match" + ] + }, + { + "required": [ + "must_not_match" + ] + } + ], + "properties": { + "pattern": { + "type": "string", + "description": "The updated regular expression of the custom pattern." + }, + "start_delimiter": { + "type": "string", + "description": "The updated start delimiter regex for the custom pattern." + }, + "end_delimiter": { + "type": "string", + "description": "The updated end delimiter regex for the custom pattern." + }, + "must_match": { + "type": "array", + "description": "Updated list of regexes that the secret must match.", + "items": { + "type": "string" + } + }, + "must_not_match": { + "type": "array", + "description": "Updated list of regexes that the secret must not match.", + "items": { + "type": "string" + } + }, + "custom_pattern_version": { + "type": [ + "string", + "null" + ], + "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + } + } + }, + "examples": { + "default": { + "value": { + "pattern": "updated_secret_[0-9A-Z]{16}", + "start_delimiter": "[^0-9A-Za-z]", + "end_delimiter": "[^0-9A-Za-z]", + "must_match": [ + "updated_secret_[0-9]{2}*" + ], + "must_not_match": [ + "updated_secret_1234567890ABCDEF" + ], + "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K" + } + } + } + } + } + }, "responses": { "200": { - "description": "Response", + "description": "Pattern updated successfully.", "content": { "application/json": { "schema": { + "title": "Secret Scanning Custom Pattern", + "description": "A custom pattern for secret scanning.", "type": "object", "properties": { - "number": { + "id": { "type": "integer", - "description": "The security alert number.", - "readOnly": true - }, - "created_at": { - "type": "string", - "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "updated_at": { - "anyOf": [ - { - "type": "null" - }, - { - "type": "string", - "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - } - ] + "description": "The ID of the custom pattern." }, - "url": { + "name": { "type": "string", - "description": "The REST API URL of the alert resource.", - "format": "uri", - "readOnly": true + "description": "The name of the custom pattern." }, - "html_url": { + "pattern": { "type": "string", - "description": "The GitHub URL of the alert resource.", - "format": "uri", - "readOnly": true + "description": "The regular expression of the custom pattern." }, - "locations_url": { + "slug": { "type": "string", - "format": "uri", - "description": "The REST API URL of the code locations for this alert." + "description": "A URL-friendly identifier for the custom pattern, derived from its name." }, "state": { - "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", "type": "string", + "description": "The state of the custom pattern.", "enum": [ - "open", - "resolved" + "published", + "unpublished" ] }, - "resolution": { + "push_protection_enabled": { + "type": "boolean", + "description": "Whether push protection is enabled for this custom pattern." + }, + "start_delimiter": { "type": [ "string", "null" ], - "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", - "enum": [ - "false_positive", - "wont_fix", - "revoked", - "used_in_tests", - null - ] + "description": "The start delimiter regex for the custom pattern." }, - "resolved_at": { + "end_delimiter": { "type": [ "string", "null" ], - "format": "date-time", - "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "resolved_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] + "description": "The end delimiter regex for the custom pattern." }, - "resolution_comment": { + "must_match": { "type": [ - "string", + "array", "null" ], - "description": "An optional comment to resolve an alert." - }, - "secret_type": { - "type": "string", - "description": "The type of secret that secret scanning detected." - }, - "secret_type_display_name": { - "type": "string", - "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" + "description": "List of regexes that the secret must match.", + "items": { + "type": "string" + } }, - "provider": { + "must_not_match": { "type": [ - "string", + "array", "null" ], - "description": "The provider of the secret that was detected." + "description": "List of regexes that the secret must not match.", + "items": { + "type": "string" + } }, - "provider_slug": { + "custom_pattern_version": { "type": [ "string", "null" ], - "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." + "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." }, - "secret": { + "created_at": { "type": "string", - "description": "The secret that was detected." - }, - "push_protection_bypassed": { - "type": [ - "boolean", - "null" - ], - "description": "Whether push protection was bypassed for the detected secret." - }, - "push_protection_bypassed_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "push_protection_bypassed_at": { - "type": [ - "string", - "null" - ], "format": "date-time", - "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + "description": "The date and time the custom pattern was created in ISO 8601 format." }, - "push_protection_bypass_request_reviewer": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] + "updated_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was last updated in ISO 8601 format." + } + }, + "required": [ + "id", + "name", + "pattern", + "slug", + "state", + "push_protection_enabled" + ] + }, + "examples": { + "default": { + "value": { + "id": 1, + "name": "Example Custom Pattern", + "pattern": "updated_secret_[0-9A-Z]{16}", + "slug": "example_custom_pattern", + "state": "published", + "push_protection_enabled": true, + "start_delimiter": "[^0-9A-Za-z]", + "end_delimiter": "[^0-9A-Za-z]", + "must_match": [ + "updated_secret_[0-9]{2}*" + ], + "must_not_match": [ + "updated_secret_1234567890ABCDEF" + ], + "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K", + "created_at": "2024-01-15T10:30:00Z", + "updated_at": "2024-06-01T12:00:00Z" + } + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "push_protection_bypass_request_reviewer_comment": { + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { "type": [ "string", "null" - ], - "description": "An optional comment when reviewing a push protection bypass." + ] }, - "push_protection_bypass_request_comment": { + "documentation_url": { "type": [ "string", "null" - ], - "description": "An optional comment when requesting a push protection bypass." + ] }, - "push_protection_bypass_request_html_url": { + "detail": { "type": [ "string", "null" - ], - "format": "uri", - "description": "The URL to a push protection bypass request." - }, - "validity": { - "type": "string", - "description": "The token status as of the latest validity check.", - "enum": [ - "active", - "inactive", - "unknown" ] }, - "publicly_leaked": { - "type": [ - "boolean", - "null" - ], - "description": "Whether the detected secret was publicly leaked." + "status": { + "type": "integer" }, - "multi_repo": { + "scimType": { "type": [ - "boolean", + "string", "null" - ], - "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." + ] }, - "is_base64_encoded": { - "type": [ - "boolean", - "null" - ], - "description": "A boolean value representing whether or not alert is base64 encoded" + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "first_location_detected": { - "anyOf": [ - { - "type": "null" - }, - { - "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", - "oneOf": [ - { - "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The file path in the repository", - "examples": [ - "/example/secrets.txt" - ] - }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "blob_url": { - "type": "string", - "description": "The API URL to get the associated blob resource" - }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "commit_url": { - "type": "string", - "description": "The API URL to get the associated commit resource" - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL to get the associated commit resource.", - "examples": [ - "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" - ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "blob_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The file path of the wiki page", - "examples": [ - "/example/Home.md" - ] - }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "page_url": { - "type": "string", - "description": "The GitHub URL to get the associated wiki page", - "examples": [ - "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", - "examples": [ - "302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - }, - "commit_url": { - "type": "string", - "description": "The GitHub URL to get the associated wiki commit", - "examples": [ - "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "page_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", - "type": "object", - "properties": { - "issue_title_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } - }, - "required": [ - "issue_title_url" - ] - }, - { - "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", - "type": "object", - "properties": { - "issue_body_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } - }, - "required": [ - "issue_body_url" - ] - }, - { - "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", - "type": "object", - "properties": { - "issue_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" - ] - } - }, - "required": [ - "issue_comment_url" - ] - }, - { - "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", - "type": "object", - "properties": { - "discussion_title_url": { - "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082" - ] - } - }, - "required": [ - "discussion_title_url" - ] - }, - { - "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", - "type": "object", - "properties": { - "discussion_body_url": { - "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082#discussion-4566270" - ] - } - }, - "required": [ - "discussion_body_url" - ] - }, - { - "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", - "type": "object", - "properties": { - "discussion_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the discussion comment where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082#discussioncomment-4158232" - ] - } - }, - "required": [ - "discussion_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", - "type": "object", - "properties": { - "pull_request_title_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" - ] - } - }, - "required": [ - "pull_request_title_url" - ] - }, - { - "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", - "type": "object", - "properties": { - "pull_request_body_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" - ] - } - }, - "required": [ - "pull_request_body_url" - ] - }, - { - "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", - "type": "object", - "properties": { - "pull_request_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" - ] - } - }, - "required": [ - "pull_request_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", - "type": "object", - "properties": { - "pull_request_review_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" - ] - } - }, - "required": [ - "pull_request_review_url" - ] - }, - { - "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", - "type": "object", - "properties": { - "pull_request_review_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" - ] - } - }, - "required": [ - "pull_request_review_comment_url" - ] - } - ] - } - ] + "documentation_url": { + "type": "string" }, - "has_more_locations": { - "type": "boolean", - "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." + "url": { + "type": "string" }, - "assigned_to": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "closure_request_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment from the closure request author." + "documentation_url": { + "type": "string" }, - "closure_request_reviewer_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment from the closure request reviewer." + "url": { + "type": "string" }, - "closure_request_reviewer": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "status": { + "type": "string" + } + } + } + } + } + }, + "412": { + "description": "Precondition Failed", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "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" - ] + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } } + } + } + } + } + } + } + } + } + } + }, + "/repos/{owner}/{repo}/secret-scanning/push-protection-bypasses": { + "post": { + "summary": "Create a push protection bypass", + "description": "Creates a bypass for a previously push protected secret.\n\nThe authenticated user must be the original author of the committed secret.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint.", + "operationId": "secret-scanning/create-push-protection-bypass", + "tags": [ + "secret-scanning" + ], + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#create-a-push-protection-bypass" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "reason": { + "description": "The reason for bypassing push protection.", + "type": "string", + "enum": [ + "false_positive", + "used_in_tests", + "will_fix_later" + ] + }, + "placeholder_id": { + "description": "The ID of the push protection bypass placeholder. This value is returned on any push protected routes.", + "type": "string" + } + }, + "required": [ + "reason", + "placeholder_id" + ] + }, + "examples": { + "default": { + "value": { + "reason": "will_fix_later", + "placeholder_id": "2k4dM4tseyC5lPIsjl5emX9sPNk" + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "reason": { + "description": "The reason for bypassing push protection.", + "type": "string", + "enum": [ + "false_positive", + "used_in_tests", + "will_fix_later" ] }, - "metadata": { - "type": "array", - "description": "A list of metadata key/value pairs associated with the secret scanning alert.", - "readOnly": true, - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "The metadata key." - }, - "value": { - "type": "string", - "description": "The metadata value." - } - }, - "required": [ - "key", - "value" - ] - } + "expire_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the bypass will expire in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "token_type": { + "type": "string", + "description": "The token type this bypass is for." } } }, "examples": { "default": { "value": { - "number": 42, - "created_at": "2020-11-06T18:18:30Z", - "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42", - "html_url": "https://github.com/owner/private-repo/security/secret-scanning/42", - "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42/locations", - "state": "open", - "resolution": null, - "resolved_at": null, - "resolved_by": null, - "secret_type": "mailchimp_api_key", - "secret_type_display_name": "Mailchimp API Key", - "secret": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-us2", - "push_protection_bypassed_by": null, - "push_protection_bypassed": false, - "push_protection_bypassed_at": null, - "push_protection_bypass_request_reviewer": null, - "push_protection_bypass_request_reviewer_comment": null, - "push_protection_bypass_request_comment": null, - "push_protection_bypass_request_html_url": null, - "resolution_comment": null, - "validity": "unknown", - "publicly_leaked": false, - "multi_repo": false, - "metadata": [ - { - "key": "owner_email", - "value": "owner@example.com" - } - ] + "reason": "will_fix_later", + "expire_at": "2020-11-06T18:18:30Z", + "token_type": "mailchimp_api_key" } } } } } }, - "304": { - "description": "Not modified" + "403": { + "description": "User does not have enough permissions to perform this action." }, "404": { - "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" + "description": "Placeholder ID not found, or push protection is disabled on this repository." + }, + "422": { + "description": "Bad request, input data missing or incorrect." }, "503": { "description": "Service unavailable", @@ -685708,22 +698259,24 @@ } }, "x-github": { - "githubCloudOnly": false, "enabledForGitHubApps": true, + "githubCloudOnly": false, "category": "secret-scanning", "subcategory": "secret-scanning" } - }, - "patch": { - "summary": "Update a secret scanning alert", - "description": "Updates the status of a secret scanning alert in an eligible repository.\n\nYou can also use this endpoint to assign or unassign an alert to a user who has write access to the repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "operationId": "secret-scanning/update-alert", + } + }, + "/repos/{owner}/{repo}/secret-scanning/scan-history": { + "get": { + "summary": "Get secret scanning scan history for a repository", + "description": "Lists the latest default incremental and backfill scans by type for a repository.\n\n> [!NOTE]\n> This endpoint requires [GitHub Advanced Security](https://docs.github.com/get-started/learning-about-github/about-github-advanced-security).\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", "tags": [ "secret-scanning" ], + "operationId": "secret-scanning/get-scan-history", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#update-a-secret-scanning-alert" + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#get-secret-scanning-scan-history-for-a-repository" }, "parameters": [ { @@ -685743,117 +698296,33 @@ "schema": { "type": "string" } - }, - { - "name": "alert_number", - "in": "path", - "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", - "required": true, - "schema": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "state": { - "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", - "type": "string", - "enum": [ - "open", - "resolved" - ] - }, - "resolution": { - "type": [ - "string", - "null" - ], - "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", - "enum": [ - "false_positive", - "wont_fix", - "revoked", - "used_in_tests", - null - ] - }, - "resolution_comment": { - "description": "An optional comment when closing or reopening an alert. Cannot be updated or deleted.", - "type": [ - "string", - "null" - ] - }, - "assignee": { - "description": "The username of the user to assign to the alert. Set to `null` to unassign the alert.", - "type": [ - "string", - "null" - ] - }, - "validity": { - "type": [ - "string", - "null" - ], - "enum": [ - "active", - "inactive", - null - ], - "description": "Sets the validity of the secret scanning alert. Can be `active`, `inactive`, or `null` to clear the override." - } - }, - "anyOf": [ - { - "required": [ - "state" - ] - }, - { - "required": [ - "assignee" - ] - }, - { - "required": [ - "validity" - ] - } - ] - }, - "examples": { - "default": { - "value": { - "state": "resolved", - "resolution": "false_positive" - } - }, - "assign": { - "summary": "Assign alert to a user", - "value": { - "assignee": "octocat" - } - }, - "unassign": { - "summary": "Unassign alert", - "value": { - "assignee": null + "responses": { + "404": { + "description": "Repository does not have GitHub Advanced Security or secret scanning enabled" + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } } } } } - } - }, - "responses": { + }, "200": { "description": "Response", "content": { @@ -685861,1113 +698330,1351 @@ "schema": { "type": "object", "properties": { - "number": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true + "incremental_scans": { + "type": "array", + "items": { + "description": "Information on a single scan performed by secret scanning on the repository", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of scan" + }, + "status": { + "type": "string", + "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "completed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was completed. Empty if the scan is running" + }, + "started_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was started. Empty if the scan is pending" + } + } + } }, - "created_at": { - "type": "string", - "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true + "pattern_update_scans": { + "type": "array", + "items": { + "description": "Information on a single scan performed by secret scanning on the repository", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of scan" + }, + "status": { + "type": "string", + "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "completed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was completed. Empty if the scan is running" + }, + "started_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was started. Empty if the scan is pending" + } + } + } }, - "updated_at": { - "anyOf": [ + "backfill_scans": { + "type": "array", + "items": { + "description": "Information on a single scan performed by secret scanning on the repository", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of scan" + }, + "status": { + "type": "string", + "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "completed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was completed. Empty if the scan is running" + }, + "started_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was started. Empty if the scan is pending" + } + } + } + }, + "custom_pattern_backfill_scans": { + "type": "array", + "items": { + "allOf": [ + { + "description": "Information on a single scan performed by secret scanning on the repository", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of scan" + }, + "status": { + "type": "string", + "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "completed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was completed. Empty if the scan is running" + }, + "started_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was started. Empty if the scan is pending" + } + } + }, + { + "type": "object", + "properties": { + "pattern_name": { + "type": "string", + "description": "Name of the custom pattern for custom pattern scans" + }, + "pattern_scope": { + "type": "string", + "description": "Level at which the custom pattern is defined, one of \"repository\", \"organization\", or \"enterprise\"" + } + } + } + ] + } + }, + "generic_secrets_backfill_scans": { + "type": "array", + "items": { + "description": "Information on a single scan performed by secret scanning on the repository", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of scan" + }, + "status": { + "type": "string", + "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "completed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was completed. Empty if the scan is running" + }, + "started_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was started. Empty if the scan is pending" + } + } + } + } + } + }, + "examples": { + "default": { + "value": { + "incremental_scans": [ { - "type": "null" + "type": "git", + "status": "completed", + "completed_at": "2024-10-07T02:47:00Z" + } + ], + "backfill_scans": [ + { + "type": "git", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:50:00Z" }, { - "type": "string", - "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true + "type": "issue", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:49:00Z" + }, + { + "type": "discussion", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:48:00Z" } - ] - }, - "url": { - "type": "string", - "description": "The REST API URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "html_url": { - "type": "string", - "description": "The GitHub URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "locations_url": { - "type": "string", - "format": "uri", - "description": "The REST API URL of the code locations for this alert." - }, - "state": { - "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", - "type": "string", - "enum": [ - "open", - "resolved" - ] - }, - "resolution": { - "type": [ - "string", - "null" ], - "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", - "enum": [ - "false_positive", - "wont_fix", - "revoked", - "used_in_tests", - null - ] - }, - "resolved_at": { - "type": [ - "string", - "null" + "pattern_update_scans": [ + { + "type": "discussion", + "status": "in_progress", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:51:00Z" + } ], - "format": "date-time", - "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "resolved_by": { - "anyOf": [ + "custom_pattern_backfill_scans": [ { - "type": "null" + "type": "git", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:55:00Z", + "pattern_slug": "my-custom-pattern", + "pattern_scope": "enterprise" }, { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "type": "git", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:55:00Z", + "pattern_slug": "my-custom-pattern", + "pattern_scope": "organization" + } + ], + "generic_secrets_backfill_scans": [ + { + "type": "git", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:55:00Z" + } + ] + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "secret-scanning" + } + } + }, + "/repos/{owner}/{repo}/security-advisories": { + "get": { + "summary": "List repository security advisories", + "description": "Lists security advisories in a repository.\n\nThe authenticated user can access unpublished security advisories from a repository if they are a security manager or administrator of that repository, or if they are a collaborator on any security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:read` scope to to get a published security advisory in a private repository, or any unpublished security advisory that the authenticated user has access to.", + "tags": [ + "security-advisories" + ], + "operationId": "security-advisories/list-repository-advisories", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#list-repository-security-advisories" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "direction", + "description": "The direction to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "desc" + } + }, + { + "name": "sort", + "description": "The property to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created", + "updated", + "published" + ], + "default": "created" + } + }, + { + "name": "before", + "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for results before this cursor. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "after", + "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for results after this cursor. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "per_page", + "description": "The number of advisories to return per page. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "minimum": 1, + "maximum": 100, + "default": 30 + } + }, + { + "name": "state", + "description": "Filter by state of the repository advisories. Only advisories of this state will be returned.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "triage", + "draft", + "published", + "closed" + ] + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "description": "A repository security advisory.", + "type": "object", + "properties": { + "ghsa_id": { + "type": "string", + "description": "The GitHub Security Advisory ID.", + "readOnly": true + }, + "cve_id": { + "type": [ + "string", + "null" + ], + "description": "The Common Vulnerabilities and Exposures (CVE) ID." + }, + "url": { + "type": "string", + "format": "uri", + "description": "The API URL for the advisory.", + "readOnly": true + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The URL for the advisory.", + "readOnly": true + }, + "summary": { + "type": "string", + "description": "A short summary of the advisory.", + "maxLength": 1024 + }, + "description": { + "type": [ + "string", + "null" + ], + "description": "A detailed description of what the advisory entails.", + "maxLength": 65535 + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the advisory.", + "enum": [ + "critical", + "high", + "medium", + "low", + null + ] + }, + "author": { + "readOnly": true, + "description": "The author of the advisory.", + "allOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "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" + ] + } + ], + "type": [ + "null" + ] + }, + "publisher": { + "readOnly": true, + "description": "The publisher of the advisory.", + "allOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, + "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" + ] + } + ], + "type": [ + "null" + ] + }, + "identifiers": { + "type": "array", + "items": { + "type": "object", + "properties": { "type": { "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + "description": "The type of identifier.", + "enum": [ + "CVE", + "GHSA" ] }, - "user_view_type": { + "value": { "type": "string", - "examples": [ - "public" - ] + "description": "The identifier value." } }, "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" + "value" ] - } - ] - }, - "resolution_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment to resolve an alert." - }, - "secret_type": { - "type": "string", - "description": "The type of secret that secret scanning detected." - }, - "secret_type_display_name": { - "type": "string", - "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" - }, - "provider": { - "type": [ - "string", - "null" - ], - "description": "The provider of the secret that was detected." - }, - "provider_slug": { - "type": [ - "string", - "null" - ], - "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." - }, - "secret": { - "type": "string", - "description": "The secret that was detected." - }, - "push_protection_bypassed": { - "type": [ - "boolean", - "null" - ], - "description": "Whether push protection was bypassed for the detected secret." - }, - "push_protection_bypassed_by": { - "anyOf": [ - { - "type": "null" }, - { - "title": "Simple User", - "description": "A GitHub user.", + "readOnly": true + }, + "state": { + "type": "string", + "description": "The state of the advisory.", + "enum": [ + "published", + "closed", + "withdrawn", + "draft", + "triage" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was created, in ISO 8601 format.", + "readOnly": true + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was last updated, in ISO 8601 format.", + "readOnly": true + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was published, in ISO 8601 format.", + "readOnly": true + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was closed, in ISO 8601 format.", + "readOnly": true + }, + "withdrawn_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was withdrawn, in ISO 8601 format.", + "readOnly": true + }, + "submission": { + "type": [ + "object", + "null" + ], + "readOnly": true, + "properties": { + "accepted": { + "type": "boolean", + "description": "Whether a private vulnerability report was accepted by the repository's administrators.", + "readOnly": true + } + }, + "required": [ + "accepted" + ] + }, + "vulnerabilities": { + "type": [ + "array", + "null" + ], + "items": { + "description": "A product affected by the vulnerability detailed in a repository security advisory.", "type": "object", "properties": { - "name": { + "package": { + "description": "The name of the package affected by the vulnerability.", "type": [ - "string", + "object", "null" + ], + "properties": { + "ecosystem": { + "type": "string", + "description": "The package's language or package management ecosystem.", + "enum": [ + "rubygems", + "npm", + "pip", + "maven", + "nuget", + "composer", + "go", + "rust", + "erlang", + "actions", + "pub", + "other", + "swift" + ] + }, + "name": { + "type": [ + "string", + "null" + ], + "description": "The unique package name within its ecosystem." + } + }, + "required": [ + "ecosystem", + "name" ] }, - "email": { + "vulnerable_version_range": { "type": [ "string", "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] + ], + "description": "The range of the package versions affected by the vulnerability." }, - "gravatar_id": { + "patched_versions": { "type": [ "string", "null" ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "description": "The package version(s) that resolve the vulnerability." }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "vulnerable_functions": { + "type": [ + "array", + "null" + ], + "description": "The functions in the package that are affected.", + "items": { + "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" - ] + "package", + "vulnerable_version_range", + "patched_versions", + "vulnerable_functions" + ], + "additionalProperties": false } - ] - }, - "push_protection_bypassed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "push_protection_bypass_request_reviewer": { - "anyOf": [ - { - "type": "null" + }, + "cvss": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS vector." + }, + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] + "required": [ + "vector_string", + "score" + ] + }, + "cvss_severities": { + "type": [ + "object", + "null" + ], + "properties": { + "cvss_v3": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS 3 vector string." + }, + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS 3 score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } }, - "site_admin": { - "type": "boolean" + "required": [ + "vector_string", + "score" + ] + }, + "cvss_v4": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS 4 vector string." + }, + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS 4 score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } }, - "starred_at": { + "required": [ + "vector_string", + "score" + ] + } + } + }, + "cwes": { + "type": [ + "array", + "null" + ], + "items": { + "type": "object", + "properties": { + "cwe_id": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "description": "The Common Weakness Enumeration (CWE) identifier." }, - "user_view_type": { + "name": { "type": "string", - "examples": [ - "public" - ] + "description": "The name of the CWE.", + "readOnly": true } }, "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" + "cwe_id", + "name" ] - } - ] - }, - "push_protection_bypass_request_reviewer_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment when reviewing a push protection bypass." - }, - "push_protection_bypass_request_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment when requesting a push protection bypass." - }, - "push_protection_bypass_request_html_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "description": "The URL to a push protection bypass request." - }, - "validity": { - "type": "string", - "description": "The token status as of the latest validity check.", - "enum": [ - "active", - "inactive", - "unknown" - ] - }, - "publicly_leaked": { - "type": [ - "boolean", - "null" - ], - "description": "Whether the detected secret was publicly leaked." - }, - "multi_repo": { - "type": [ - "boolean", - "null" - ], - "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." - }, - "is_base64_encoded": { - "type": [ - "boolean", - "null" - ], - "description": "A boolean value representing whether or not alert is base64 encoded" - }, - "first_location_detected": { - "anyOf": [ - { - "type": "null" }, - { - "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", - "oneOf": [ - { - "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The file path in the repository", - "examples": [ - "/example/secrets.txt" - ] - }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "blob_url": { - "type": "string", - "description": "The API URL to get the associated blob resource" - }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "commit_url": { - "type": "string", - "description": "The API URL to get the associated commit resource" - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL to get the associated commit resource.", - "examples": [ - "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" - ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "blob_url", - "commit_sha", - "commit_url" - ] + "readOnly": true + }, + "cwe_ids": { + "type": [ + "array", + "null" + ], + "description": "A list of only the CWE IDs.", + "items": { + "type": "string" + } + }, + "credits": { + "type": [ + "array", + "null" + ], + "items": { + "type": "object", + "properties": { + "login": { + "type": "string", + "description": "The username of the user credited." }, - { - "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + } + } + } + }, + "credits_detailed": { + "type": [ + "array", + "null" + ], + "items": { + "description": "A credit given to a user for a repository security advisory.", + "type": "object", + "properties": { + "user": { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "path": { - "type": "string", - "description": "The file path of the wiki page", - "examples": [ - "/example/Home.md" + "name": { + "type": [ + "string", + "null" ] }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" + "email": { + "type": [ + "string", + "null" ] }, - "page_url": { + "login": { "type": "string", - "description": "The GitHub URL to get the associated wiki page", "examples": [ - "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + "octocat" ] }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "302c0b7e200761c9dd9b57e57db540ee0b4293a5" + 1 ] }, - "commit_url": { + "node_id": { "type": "string", - "description": "The GitHub URL to get the associated wiki commit", "examples": [ - "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + "MDQ6VXNlcjE=" ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "page_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", - "type": "object", - "properties": { - "issue_title_url": { + }, + "avatar_url": { "type": "string", "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" + "https://github.com/images/error/octocat_happy.gif" ] }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", + "gravatar_id": { + "type": [ + "string", + "null" + ], "examples": [ - "https://github.com/octocat/Hello-World/issues/1" + "41d064eb2195891e12d0413f63227ea7" ] - } - }, - "required": [ - "issue_title_url" - ] - }, - { - "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", - "type": "object", - "properties": { - "issue_body_url": { + }, + "url": { "type": "string", "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" + "https://api.github.com/users/octocat" ] }, "html_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } - }, - "required": [ - "issue_body_url" - ] - }, - { - "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", - "type": "object", - "properties": { - "issue_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue comment where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + "https://github.com/octocat" ] }, - "html_url": { + "followers_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the issue comment where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" + "https://api.github.com/users/octocat/followers" ] - } - }, - "required": [ - "issue_comment_url" - ] - }, - { - "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", - "type": "object", - "properties": { - "discussion_title_url": { + }, + "following_url": { "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", "examples": [ - "https://github.com/community/community/discussions/39082" + "https://api.github.com/users/octocat/following{/other_user}" ] - } - }, - "required": [ - "discussion_title_url" - ] - }, - { - "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", - "type": "object", - "properties": { - "discussion_body_url": { + }, + "gists_url": { "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", "examples": [ - "https://github.com/community/community/discussions/39082#discussion-4566270" + "https://api.github.com/users/octocat/gists{/gist_id}" ] - } - }, - "required": [ - "discussion_body_url" - ] - }, - { - "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", - "type": "object", - "properties": { - "discussion_comment_url": { + }, + "starred_url": { "type": "string", - "format": "uri", - "description": "The API URL to get the discussion comment where the secret was detected.", "examples": [ - "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] - } - }, - "required": [ - "discussion_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", - "type": "object", - "properties": { - "pull_request_title_url": { + }, + "subscriptions_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + "https://api.github.com/users/octocat/subscriptions" ] }, - "html_url": { + "organizations_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" + "https://api.github.com/users/octocat/orgs" ] - } - }, - "required": [ - "pull_request_title_url" - ] - }, - { - "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", - "type": "object", - "properties": { - "pull_request_body_url": { + }, + "repos_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + "https://api.github.com/users/octocat/repos" ] }, - "html_url": { + "events_url": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" + "https://api.github.com/users/octocat/events{/privacy}" ] - } - }, - "required": [ - "pull_request_body_url" - ] - }, - { - "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", - "type": "object", - "properties": { - "pull_request_comment_url": { + }, + "received_events_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request comment where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + "https://api.github.com/users/octocat/received_events" ] }, - "html_url": { + "type": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request comment where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" + "User" ] - } - }, - "required": [ - "pull_request_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", - "type": "object", - "properties": { - "pull_request_review_url": { + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + "\"2020-07-09T00:17:55Z\"" ] }, - "html_url": { + "user_view_type": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" + "public" ] } }, "required": [ - "pull_request_review_url" + "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" ] }, - { - "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", - "type": "object", - "properties": { - "pull_request_review_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" - ] - } - }, - "required": [ - "pull_request_review_comment_url" + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + }, + "state": { + "type": "string", + "description": "The state of the user's acceptance of the credit.", + "enum": [ + "accepted", + "declined", + "pending" ] } - ] - } - ] - }, - "has_more_locations": { - "type": "boolean", - "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." - }, - "assigned_to": { - "anyOf": [ - { - "type": "null" + }, + "required": [ + "user", + "type", + "state" + ], + "additionalProperties": false }, - { + "readOnly": true + }, + "collaborating_users": { + "type": [ + "array", + "null" + ], + "description": "A list of users that collaborate on the advisory.", + "items": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -687135,1842 +699842,1320 @@ "url" ] } - ] - }, - "closure_request_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment from the closure request author." - }, - "closure_request_reviewer_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment from the closure request reviewer." - }, - "closure_request_reviewer": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", + }, + "collaborating_teams": { + "type": [ + "array", + "null" + ], + "description": "A list of teams that collaborate on the advisory.", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + "type": "integer" }, "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] + "type": "string" }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] + "name": { + "type": "string" }, - "gravatar_id": { + "slug": { + "type": "string" + }, + "description": { "type": [ "string", "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" ] }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] + "privacy": { + "type": "string" }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] + "notification_setting": { + "type": "string" }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] + "permission": { + "type": "string" }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" ] }, - "starred_url": { + "url": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] + "format": "uri" }, - "subscriptions_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "https://github.com/orgs/rails/teams/core" ] }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + "members_url": { + "type": "string" }, - "repos_url": { + "repositories_url": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "format": "uri" }, - "events_url": { + "type": { + "description": "The ownership type of the team", "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "enum": [ + "enterprise", + "organization" ] }, - "received_events_url": { + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", "type": "string", - "format": "uri", + "enum": [ + "direct", + "organization", + "enterprise" + ], "examples": [ - "https://api.github.com/users/octocat/received_events" + "direct" ] }, - "type": { - "type": "string", + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", "examples": [ - "User" + 37 ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", "examples": [ - "\"2020-07-09T00:17:55Z\"" + 42 ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } ] } }, "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" + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" ] } - ] - }, - "metadata": { - "type": "array", - "description": "A list of metadata key/value pairs associated with the secret scanning alert.", - "readOnly": true, - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "The metadata key." - }, - "value": { - "type": "string", - "description": "The metadata value." - } - }, - "required": [ - "key", - "value" - ] - } - } - } - }, - "examples": { - "default": { - "value": { - "number": 42, - "created_at": "2020-11-06T18:18:30Z", - "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42", - "html_url": "https://github.com/owner/private-repo/security/secret-scanning/42", - "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42/locations", - "state": "resolved", - "resolution": "used_in_tests", - "resolved_at": "2020-11-16T22:42:07Z", - "resolved_by": { - "login": "monalisa", - "id": 2, - "node_id": "MDQ6VXNlcjI=", - "avatar_url": "https://alambic.github.com/avatars/u/2?", - "gravatar_id": "", - "url": "https://api.github.com/users/monalisa", - "html_url": "https://github.com/monalisa", - "followers_url": "https://api.github.com/users/monalisa/followers", - "following_url": "https://api.github.com/users/monalisa/following{/other_user}", - "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", - "organizations_url": "https://api.github.com/users/monalisa/orgs", - "repos_url": "https://api.github.com/users/monalisa/repos", - "events_url": "https://api.github.com/users/monalisa/events{/privacy}", - "received_events_url": "https://api.github.com/users/monalisa/received_events", - "type": "User", - "site_admin": true - }, - "secret_type": "mailchimp_api_key", - "secret_type_display_name": "Mailchimp API Key", - "secret": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-us2", - "push_protection_bypassed": false, - "push_protection_bypassed_by": null, - "push_protection_bypassed_at": null, - "push_protection_bypass_request_reviewer": null, - "push_protection_bypass_request_reviewer_comment": null, - "push_protection_bypass_request_comment": null, - "push_protection_bypass_request_html_url": null, - "resolution_comment": "Example comment", - "validity": "unknown", - "publicly_leaked": false, - "multi_repo": false, - "metadata": [ - { - "key": "owner_email", - "value": "owner@example.com" - } - ], - "assigned_to": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://alambic.github.com/avatars/u/1?", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } - } - } - } - } - } - }, - "400": { - "description": "Bad request, resolution comment is invalid or the resolution was not changed." - }, - "403": { - "description": "Delegated alert dismissal is enabled and the authenticated user is not a valid reviewer." - }, - "404": { - "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" - }, - "422": { - "description": "State does not match the resolution or resolution comment, assignee does not have write access to the repository, or the requested validity change could not be applied to this alert" - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "enabledForGitHubApps": true, - "githubCloudOnly": false, - "category": "secret-scanning", - "subcategory": "secret-scanning" - } - } - }, - "/repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations": { - "get": { - "summary": "List locations for a secret scanning alert", - "description": "Lists all locations for a given secret scanning alert for an eligible repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "tags": [ - "secret-scanning" - ], - "operationId": "secret-scanning/list-locations-for-alert", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#list-locations-for-a-secret-scanning-alert" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alert_number", - "in": "path", - "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", - "required": true, - "schema": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "description": "List of locations where the secret was detected", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "enum": [ - "commit", - "wiki_commit", - "issue_title", - "issue_body", - "issue_comment", - "discussion_title", - "discussion_body", - "discussion_comment", - "pull_request_title", - "pull_request_body", - "pull_request_comment", - "pull_request_review", - "pull_request_review_comment" - ], - "description": "The location type. Because secrets may be found in different types of resources (ie. code, comments, issues, pull requests, discussions), this field identifies the type of resource where the secret was found.", - "examples": [ - "commit" - ] }, - "details": { - "oneOf": [ + "private_fork": { + "readOnly": true, + "description": "A temporary private fork of the advisory's repository for collaborating on a fix.", + "allOf": [ { - "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", + "title": "Simple Repository", + "description": "A GitHub repository.", "type": "object", "properties": { - "path": { + "id": { + "type": "integer", + "format": "int64", + "description": "A unique identifier of the repository.", + "examples": [ + 1296269 + ] + }, + "node_id": { "type": "string", - "description": "The file path in the repository", + "description": "The GraphQL identifier of the repository.", "examples": [ - "/example/secrets.txt" + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" ] }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" + "name": { + "type": "string", + "description": "The name of the repository.", + "examples": [ + "Hello-World" + ] }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" + "full_name": { + "type": "string", + "description": "The full, globally unique, name of the repository.", + "examples": [ + "octocat/Hello-World" + ] }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" + "private": { + "type": "boolean", + "description": "Whether the repository is private." }, - "blob_sha": { + "html_url": { "type": "string", - "description": "SHA-1 hash ID of the associated blob", + "format": "uri", + "description": "The URL to view the repository on GitHub.com.", "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" + "https://github.com/octocat/Hello-World" ] }, - "blob_url": { - "type": "string", - "description": "The API URL to get the associated blob resource" + "description": { + "type": [ + "string", + "null" + ], + "description": "The repository description.", + "examples": [ + "This your first repo!" + ] }, - "commit_sha": { + "fork": { + "type": "boolean", + "description": "Whether the repository is a fork." + }, + "url": { "type": "string", - "description": "SHA-1 hash ID of the associated commit", + "format": "uri", + "description": "The URL to get more information about the repository from the GitHub API.", "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" + "https://api.github.com/repos/octocat/Hello-World" ] }, - "commit_url": { + "archive_url": { "type": "string", - "description": "The API URL to get the associated commit resource" + "description": "A template for the API URL to download the repository as an archive.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] }, - "html_url": { + "assignees_url": { "type": "string", - "format": "uri", - "description": "The GitHub URL to get the associated commit resource.", + "description": "A template for the API URL to list the available assignees for issues in the repository.", "examples": [ - "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" + "https://api.github.com/repos/octocat/Hello-World/assignees{/user}" ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "blob_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", - "type": "object", - "properties": { - "path": { + }, + "blobs_url": { "type": "string", - "description": "The file path of the wiki page", + "description": "A template for the API URL to create or retrieve a raw Git blob in the repository.", "examples": [ - "/example/Home.md" + "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" ] }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" + "branches_url": { + "type": "string", + "description": "A template for the API URL to get information about branches in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." + "collaborators_url": { + "type": "string", + "description": "A template for the API URL to get information about collaborators of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." + "comments_url": { + "type": "string", + "description": "A template for the API URL to get information about comments on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] }, - "blob_sha": { + "commits_url": { "type": "string", - "description": "SHA-1 hash ID of the associated blob", + "description": "A template for the API URL to get information about commits on the repository.", "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" + "https://api.github.com/repos/octocat/Hello-World/commits{/sha}" ] }, - "page_url": { + "compare_url": { "type": "string", - "description": "The GitHub URL to get the associated wiki page", + "description": "A template for the API URL to compare two commits or refs.", "examples": [ - "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" ] }, - "commit_sha": { + "contents_url": { "type": "string", - "description": "SHA-1 hash ID of the associated commit", + "description": "A template for the API URL to get the contents of the repository.", "examples": [ - "302c0b7e200761c9dd9b57e57db540ee0b4293a5" + "https://api.github.com/repos/octocat/Hello-World/contents/{+path}" ] }, - "commit_url": { + "contributors_url": { "type": "string", - "description": "The GitHub URL to get the associated wiki commit", + "format": "uri", + "description": "A template for the API URL to list the contributors to the repository.", "examples": [ - "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + "https://api.github.com/repos/octocat/Hello-World/contributors" ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "page_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", - "type": "object", - "properties": { - "issue_title_url": { + }, + "deployments_url": { "type": "string", "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", + "description": "The API URL to list the deployments of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" + "https://api.github.com/repos/octocat/Hello-World/deployments" ] }, - "html_url": { + "downloads_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", + "description": "The API URL to list the downloads on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/issues/1" + "https://api.github.com/repos/octocat/Hello-World/downloads" ] - } - }, - "required": [ - "issue_title_url" - ] - }, - { - "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", - "type": "object", - "properties": { - "issue_body_url": { + }, + "events_url": { "type": "string", "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", + "description": "The API URL to list the events of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" + "https://api.github.com/repos/octocat/Hello-World/events" ] }, - "html_url": { + "forks_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", + "description": "The API URL to list the forks of the repository.", "examples": [ - "https://github.com/octocat/Hello-World/issues/1" + "https://api.github.com/repos/octocat/Hello-World/forks" ] - } - }, - "required": [ - "issue_body_url" - ] - }, - { - "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", - "type": "object", - "properties": { + }, + "git_commits_url": { + "type": "string", + "description": "A template for the API URL to get information about Git commits of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "description": "A template for the API URL to get information about Git refs of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "description": "A template for the API URL to get information about Git tags of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, "issue_comment_url": { "type": "string", - "format": "uri", - "description": "The API URL to get the issue comment where the secret was detected.", + "description": "A template for the API URL to get information about issue comments on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" ] }, - "html_url": { + "issue_events_url": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue comment where the secret was detected.", + "description": "A template for the API URL to get information about issue events on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" + "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}" ] - } - }, - "required": [ - "issue_comment_url" - ] - }, - { - "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", - "type": "object", - "properties": { - "discussion_title_url": { + }, + "issues_url": { "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", + "description": "A template for the API URL to get information about issues on the repository.", "examples": [ - "https://github.com/community/community/discussions/39082" + "https://api.github.com/repos/octocat/Hello-World/issues{/number}" ] - } - }, - "required": [ - "discussion_title_url" - ] - }, - { - "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", - "type": "object", - "properties": { - "discussion_body_url": { + }, + "keys_url": { "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", + "description": "A template for the API URL to get information about deploy keys on the repository.", "examples": [ - "https://github.com/community/community/discussions/39082#discussion-4566270" + "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}" ] - } - }, - "required": [ - "discussion_body_url" - ] - }, - { - "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", - "type": "object", - "properties": { - "discussion_comment_url": { + }, + "labels_url": { "type": "string", - "format": "uri", - "description": "The API URL to get the discussion comment where the secret was detected.", + "description": "A template for the API URL to get information about labels of the repository.", "examples": [ - "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + "https://api.github.com/repos/octocat/Hello-World/labels{/name}" ] - } - }, - "required": [ - "discussion_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", - "type": "object", - "properties": { - "pull_request_title_url": { + }, + "languages_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", + "description": "The API URL to get information about the languages of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + "https://api.github.com/repos/octocat/Hello-World/languages" ] }, - "html_url": { + "merges_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", + "description": "The API URL to merge branches in the repository.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" + "https://api.github.com/repos/octocat/Hello-World/merges" ] - } - }, - "required": [ - "pull_request_title_url" - ] - }, - { - "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", - "type": "object", - "properties": { - "pull_request_body_url": { + }, + "milestones_url": { "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", + "description": "A template for the API URL to get information about milestones of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + "https://api.github.com/repos/octocat/Hello-World/milestones{/number}" ] }, - "html_url": { + "notifications_url": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", + "description": "A template for the API URL to get information about notifications on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" + "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" ] - } - }, - "required": [ - "pull_request_body_url" - ] - }, - { - "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", - "type": "object", - "properties": { - "pull_request_comment_url": { + }, + "pulls_url": { + "type": "string", + "description": "A template for the API URL to get information about pull requests on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "description": "A template for the API URL to get information about releases on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "stargazers_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request comment where the secret was detected.", + "description": "The API URL to list the stargazers on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + "https://api.github.com/repos/octocat/Hello-World/stargazers" ] }, - "html_url": { + "statuses_url": { + "type": "string", + "description": "A template for the API URL to get information about statuses of a commit.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the pull request comment where the secret was detected.", + "description": "The API URL to list the subscribers on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" + "https://api.github.com/repos/octocat/Hello-World/subscribers" ] - } - }, - "required": [ - "pull_request_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", - "type": "object", - "properties": { - "pull_request_review_url": { + }, + "subscription_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request review where the secret was detected.", + "description": "The API URL to subscribe to notifications for this repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + "https://api.github.com/repos/octocat/Hello-World/subscription" ] }, - "html_url": { + "tags_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the pull request review where the secret was detected.", + "description": "The API URL to get information about tags on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" + "https://api.github.com/repos/octocat/Hello-World/tags" ] - } - }, - "required": [ - "pull_request_review_url" - ] - }, - { - "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", - "type": "object", - "properties": { - "pull_request_review_comment_url": { + }, + "teams_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request review comment where the secret was detected.", + "description": "The API URL to list the teams on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + "https://api.github.com/repos/octocat/Hello-World/teams" ] }, - "html_url": { + "trees_url": { + "type": "string", + "description": "A template for the API URL to create or retrieve a raw Git tree of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "hooks_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the pull request review comment where the secret was detected.", + "description": "The API URL to list the hooks on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" + "https://api.github.com/repos/octocat/Hello-World/hooks" ] } }, "required": [ - "pull_request_review_comment_url" - ] - } - ] - } - } - } - }, - "examples": { - "default": { - "value": [ - { - "type": "commit", - "details": { - "path": "/example/secrets.txt", - "start_line": 1, - "end_line": 1, - "start_column": 1, - "end_column": 64, - "blob_sha": "af5626b4a114abcb82d63db7c8082c3c4756e51b", - "blob_url": "https://api.github.com/repos/octocat/hello-world/git/blobs/af5626b4a114abcb82d63db7c8082c3c4756e51b", - "commit_sha": "f14d7debf9775f957cf4f1e8176da0786431f72b", - "commit_url": "https://api.github.com/repos/octocat/hello-world/git/commits/f14d7debf9775f957cf4f1e8176da0786431f72b" - } - }, - { - "type": "wiki_commit", - "details": { - "path": "/example/Home.md", - "start_line": 1, - "end_line": 1, - "start_column": 1, - "end_column": 64, - "blob_sha": "af5626b4a114abcb82d63db7c8082c3c4756e51b", - "page_url": "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5", - "commit_sha": "302c0b7e200761c9dd9b57e57db540ee0b4293a5", - "commit_url": "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - } - }, - { - "type": "issue_title", - "details": { - "issue_title_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347" - } - }, - { - "type": "issue_body", - "details": { - "issue_body_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347" - } - }, - { - "type": "issue_comment", - "details": { - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" - } - }, - { - "type": "discussion_title", - "details": { - "discussion_title_url": "https://github.com/community/community/discussions/39082" - } - }, - { - "type": "discussion_body", - "details": { - "discussion_body_url": "https://github.com/community/community/discussions/39082#discussion-4566270" - } - }, - { - "type": "discussion_comment", - "details": { - "discussion_comment_url": "https://github.com/community/community/discussions/39082#discussioncomment-4158232" - } - }, - { - "type": "pull_request_title", - "details": { - "pull_request_title_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - } - }, - { - "type": "pull_request_body", - "details": { - "pull_request_body_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - } - }, - { - "type": "pull_request_comment", - "details": { - "pull_request_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments/1825855898" - } - }, - { - "type": "pull_request_review", - "details": { - "pull_request_review_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" - } - }, - { - "type": "pull_request_review_comment", - "details": { - "pull_request_review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" - } - } - ] - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - }, - "404": { - "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "secret-scanning" - } - } - }, - "/repos/{owner}/{repo}/secret-scanning/custom-patterns": { - "get": { - "summary": "List repository custom patterns", - "description": "Lists secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "tags": [ - "secret-scanning" - ], - "operationId": "secret-scanning/list-repo-custom-patterns", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#list-repository-custom-patterns" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "custom-patterns" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "state", - "description": "Filter custom patterns by state. When absent, returns patterns in all states.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "published", - "unpublished" - ] - } - }, - { - "name": "push_protection", - "description": "Filter custom patterns by whether push protection is enabled. When absent, returns patterns regardless of push protection status.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - }, - { - "name": "sort", - "description": "The property to sort the results by.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "created", - "updated", - "name" - ], - "default": "created" - } - }, - { - "name": "direction", - "description": "The direction to sort the results by.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "asc", - "desc" - ], - "default": "desc" - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Secret Scanning Custom Pattern", - "description": "A custom pattern for secret scanning.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "The ID of the custom pattern." - }, - "name": { - "type": "string", - "description": "The name of the custom pattern." - }, - "pattern": { - "type": "string", - "description": "The regular expression of the custom pattern." - }, - "slug": { - "type": "string", - "description": "A URL-friendly identifier for the custom pattern, derived from its name." - }, - "state": { - "type": "string", - "description": "The state of the custom pattern.", - "enum": [ - "published", - "unpublished" - ] - }, - "push_protection_enabled": { - "type": "boolean", - "description": "Whether push protection is enabled for this custom pattern." - }, - "start_delimiter": { - "type": [ - "string", - "null" - ], - "description": "The start delimiter regex for the custom pattern." - }, - "end_delimiter": { - "type": [ - "string", - "null" - ], - "description": "The end delimiter regex for the custom pattern." - }, - "must_match": { - "type": [ - "array", - "null" - ], - "description": "List of regexes that the secret must match.", - "items": { - "type": "string" - } - }, - "must_not_match": { - "type": [ - "array", - "null" - ], - "description": "List of regexes that the secret must not match.", - "items": { - "type": "string" - } - }, - "custom_pattern_version": { - "type": [ - "string", - "null" - ], - "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." - }, - "created_at": { - "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was created in ISO 8601 format." - }, - "updated_at": { - "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was last updated in ISO 8601 format." + "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" + ] + } + ], + "type": [ + "null" + ] } }, "required": [ - "id", - "name", - "pattern", - "slug", + "ghsa_id", + "cve_id", + "url", + "html_url", + "summary", + "description", + "severity", + "author", + "publisher", + "identifiers", "state", - "push_protection_enabled" - ] + "created_at", + "updated_at", + "published_at", + "closed_at", + "withdrawn_at", + "submission", + "vulnerabilities", + "cvss", + "cwes", + "cwe_ids", + "credits", + "credits_detailed", + "collaborating_users", + "collaborating_teams", + "private_fork" + ], + "additionalProperties": false } }, "examples": { "default": { "value": [ { - "id": 1, - "name": "Example Custom Pattern", - "pattern": "[a-z]+_token_[0-9]+", - "slug": "example-custom-pattern", - "state": "published", - "push_protection_enabled": true, - "start_delimiter": null, - "end_delimiter": null, - "must_match": null, - "must_not_match": null, - "created_at": "2024-01-15T10:30:00Z", - "updated_at": "2024-01-15T10:30:00Z" - }, - { - "id": 2, - "name": "Another Custom Pattern", - "pattern": "prefix_[a-zA-Z0-9]{32}", - "slug": "another-custom-pattern", - "state": "published", - "push_protection_enabled": false, - "start_delimiter": "\\b", - "end_delimiter": "\\b", - "must_match": [ - "^prefix_prod" - ], - "must_not_match": [ - "test" - ], - "created_at": "2024-01-16T14:20:00Z", - "updated_at": "2024-01-17T09:15:00Z" - } - ] - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - } - }, - "post": { - "summary": "Bulk create repository custom patterns", - "description": "Bulk creates secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "tags": [ - "secret-scanning" - ], - "operationId": "secret-scanning/bulk-create-repo-custom-patterns", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#bulk-create-repository-custom-patterns" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "custom-patterns" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "required": [ - "patterns" - ], - "properties": { - "patterns": { - "type": "array", - "description": "The list of custom patterns to create.", - "items": { - "title": "Secret Scanning Custom Pattern To Create", - "description": "A custom pattern to create in a bulk operation.", - "type": "object", - "required": [ - "name", - "pattern" - ], - "properties": { - "name": { - "type": "string", - "description": "The name of the custom pattern." - }, - "pattern": { - "type": "string", - "description": "The regular expression of the custom pattern." + "ghsa_id": "GHSA-abcd-1234-efgh", + "cve_id": "CVE-2050-00000", + "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", + "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", + "summary": "A short summary of the advisory.", + "description": "A detailed description of what the advisory entails.", + "severity": "critical", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false }, - "start_delimiter": { - "type": "string", - "description": "The start delimiter regex for the custom pattern.\nDefaults to `\\A|[^0-9A-Za-z]` when not specified.", - "default": "\\A|[^0-9A-Za-z]" + "publisher": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false }, - "end_delimiter": { - "type": "string", - "description": "The end delimiter regex for the custom pattern.\nDefaults to `\\z|[^0-9A-Za-z]` when not specified.", - "default": "\\z|[^0-9A-Za-z]" + "identifiers": [ + { + "type": "GHSA", + "value": "GHSA-abcd-1234-efgh" + }, + { + "type": "CVE", + "value": "CVE-2050-00000" + } + ], + "state": "published", + "created_at": "2020-01-01T00:00:00Z", + "updated_at": "2020-01-02T00:00:00Z", + "published_at": "2020-01-03T00:00:00Z", + "closed_at": null, + "withdrawn_at": null, + "submission": null, + "vulnerabilities": [ + { + "package": { + "ecosystem": "pip", + "name": "a-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", + "vulnerable_functions": [ + "function1" + ] + }, + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" + ] + } + ], + "cvss": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 }, - "must_match": { - "type": "array", - "description": "List of regexes that the secret must match.", - "items": { - "type": "string" + "cvss_severities": { + "cvss_v3": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 + }, + "cvss_v4": { + "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", + "score": 9.3 } }, - "must_not_match": { - "type": "array", - "description": "List of regexes that the secret must not match.", - "items": { - "type": "string" + "cwes": [ + { + "cwe_id": "CWE-123", + "name": "A CWE" } - } - } - } - } - } - }, - "examples": { - "default": { - "value": { - "patterns": [ - { - "name": "Example Custom Pattern", - "pattern": "[a-z]+_token_[0-9]+" + ], + "cwe_ids": [ + "CWE-123" + ], + "credits": [ + { + "login": "octocat", + "type": "analyst" + } + ], + "credits_detailed": [ + { + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "type": "analyst", + "state": "accepted" + } + ], + "collaborating_users": [ + { + "login": "octokitten", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octokitten_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octokitten", + "html_url": "https://github.com/octokitten", + "followers_url": "https://api.github.com/users/octokitten/followers", + "following_url": "https://api.github.com/users/octokitten/following{/other_user}", + "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", + "organizations_url": "https://api.github.com/users/octokitten/orgs", + "repos_url": "https://api.github.com/users/octokitten/repos", + "events_url": "https://api.github.com/users/octokitten/events{/privacy}", + "received_events_url": "https://api.github.com/users/octokitten/received_events", + "type": "User", + "site_admin": false + } + ], + "collaborating_teams": [ + { + "name": "Justice League", + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "permission": "admin", + "parent": null + } + ], + "private_fork": null }, { - "name": "Another Custom Pattern", - "pattern": "prefix_[a-zA-Z0-9]{32}", - "start_delimiter": "\\b", - "end_delimiter": "\\b", - "must_match": [ - "^prefix_prod" - ], - "must_not_match": [ - "test" - ] - } - ] - } - } - } - } - } - }, - "responses": { - "201": { - "description": "All patterns created successfully.", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "created_patterns": { - "type": "array", - "description": "The list of successfully created custom patterns.", - "items": { - "title": "Secret Scanning Custom Pattern", - "description": "A custom pattern for secret scanning.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "The ID of the custom pattern." - }, - "name": { - "type": "string", - "description": "The name of the custom pattern." - }, - "pattern": { - "type": "string", - "description": "The regular expression of the custom pattern." - }, - "slug": { - "type": "string", - "description": "A URL-friendly identifier for the custom pattern, derived from its name." + "ghsa_id": "GHSA-1234-5678-9012", + "cve_id": "CVE-2051-0000", + "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-1234-5678-9012", + "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-1234-5678-9012", + "summary": "A short summary of the advisory.", + "description": "A detailed description of what the advisory entails.", + "severity": "low", + "author": { + "login": "monauser", + "id": 2, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/monauser", + "html_url": "https://github.com/monauser", + "followers_url": "https://api.github.com/users/monauser/followers", + "following_url": "https://api.github.com/users/monauser/following{/other_user}", + "gists_url": "https://api.github.com/users/monauser/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monauser/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monauser/subscriptions", + "organizations_url": "https://api.github.com/users/monauser/orgs", + "repos_url": "https://api.github.com/users/monauser/repos", + "events_url": "https://api.github.com/users/monauser/events{/privacy}", + "received_events_url": "https://api.github.com/users/monauser/received_events", + "type": "User", + "site_admin": false + }, + "publisher": { + "login": "monalisa", + "id": 3, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/monalisa", + "html_url": "https://github.com/monalisa", + "followers_url": "https://api.github.com/users/monalisa/followers", + "following_url": "https://api.github.com/users/monalisa/following{/other_user}", + "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", + "organizations_url": "https://api.github.com/users/monalisa/orgs", + "repos_url": "https://api.github.com/users/monalisa/repos", + "events_url": "https://api.github.com/users/monalisa/events{/privacy}", + "received_events_url": "https://api.github.com/users/monalisa/received_events", + "type": "User", + "site_admin": false + }, + "identifiers": [ + { + "type": "GHSA", + "value": "GHSA-1234-5678-9012" }, - "state": { - "type": "string", - "description": "The state of the custom pattern.", - "enum": [ - "published", - "unpublished" + { + "type": "CVE", + "value": "CVE-2051-00000" + } + ], + "state": "published", + "created_at": "2020-01-03T00:00:00Z", + "updated_at": "2020-01-04T00:00:00Z", + "published_at": "2020-01-04T00:00:00Z", + "closed_at": null, + "withdrawn_at": null, + "submission": { + "accepted": true + }, + "vulnerabilities": [ + { + "package": { + "ecosystem": "pip", + "name": "a-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", + "vulnerable_functions": [ + "function1" ] }, - "push_protection_enabled": { - "type": "boolean", - "description": "Whether push protection is enabled for this custom pattern." - }, - "start_delimiter": { - "type": [ - "string", - "null" - ], - "description": "The start delimiter regex for the custom pattern." - }, - "end_delimiter": { - "type": [ - "string", - "null" - ], - "description": "The end delimiter regex for the custom pattern." - }, - "must_match": { - "type": [ - "array", - "null" - ], - "description": "List of regexes that the secret must match.", - "items": { - "type": "string" - } - }, - "must_not_match": { - "type": [ - "array", - "null" - ], - "description": "List of regexes that the secret must not match.", - "items": { - "type": "string" - } - }, - "custom_pattern_version": { - "type": [ - "string", - "null" - ], - "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." - }, - "created_at": { - "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was created in ISO 8601 format." - }, - "updated_at": { - "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was last updated in ISO 8601 format." + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" + ] } + ], + "cvss": { + "vector_string": "AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N", + "score": 1.6 }, - "required": [ - "id", - "name", - "pattern", - "slug", - "state", - "push_protection_enabled" - ] - } - } - } - }, - "examples": { - "default": { - "value": { - "created_patterns": [ - { - "id": 1, - "name": "Example Custom Pattern", - "pattern": "[a-z]+_token_[0-9]+", - "slug": "example-custom-pattern", - "state": "unpublished", - "push_protection_enabled": false, - "start_delimiter": null, - "end_delimiter": null, - "must_match": null, - "must_not_match": null, - "created_at": "2024-01-15T10:30:00Z", - "updated_at": "2024-01-15T10:30:00Z" - }, - { - "id": 2, - "name": "Another Custom Pattern", - "pattern": "prefix_[a-zA-Z0-9]{32}", - "slug": "another-custom-pattern", - "state": "unpublished", - "push_protection_enabled": false, - "start_delimiter": "\\b", - "end_delimiter": "\\b", - "must_match": [ - "^prefix_prod" - ], - "must_not_match": [ - "test" - ], - "created_at": "2024-01-15T10:30:00Z", - "updated_at": "2024-01-15T10:30:00Z" - } - ] - } - } - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - }, - "application/scim+json": { - "schema": { - "title": "Scim Error", - "description": "Scim Error", - "type": "object", - "properties": { - "message": { - "type": [ - "string", - "null" - ] - }, - "documentation_url": { - "type": [ - "string", - "null" - ] - }, - "detail": { - "type": [ - "string", - "null" - ] - }, - "status": { - "type": "integer" - }, - "scimType": { - "type": [ - "string", - "null" - ] - }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed for one or more patterns.", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "A summary message describing the error." - }, - "validation_errors": { - "type": "object", - "description": "A map of validation errors keyed by the zero-based index of the pattern that failed.", - "additionalProperties": { - "type": "object", - "properties": { - "errors": { - "type": "array", - "description": "List of validation errors for this pattern.", - "items": { - "title": "Secret Scanning Custom Pattern Validation Error", - "description": "A validation error for a custom pattern in a batch operation.", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "A machine-readable code describing the error.", - "enum": [ - "invalid", - "unprocessable", - "start_delimiter", - "end_delimiter", - "name", - "must_match", - "must_not_match", - "custom_pattern_version_mismatch" - ] - }, - "message": { - "type": "string", - "description": "A human-readable description of the error." - } - } - } + "cvss_severities": { + "cvss_v3": { + "vector_string": "CVSS:3.1/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N", + "score": 1.6 + }, + "cvss_v4": { + "vector_string": "CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", + "score": 7.1 } - } - } - } - } - } - } - } - } - } - }, - "delete": { - "summary": "Bulk delete repository custom patterns", - "description": "Bulk deletes secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "tags": [ - "secret-scanning" - ], - "operationId": "secret-scanning/bulk-delete-repo-custom-patterns", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#bulk-delete-repository-custom-patterns" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "custom-patterns" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "required": [ - "patterns" - ], - "properties": { - "patterns": { - "type": "array", - "description": "The list of custom patterns to delete.", - "maxItems": 500, - "items": { - "title": "Secret Scanning Custom Pattern To Delete", - "description": "A custom pattern to delete in a bulk operation.", - "type": "object", - "required": [ - "pattern_id" - ], - "properties": { - "pattern_id": { - "type": "integer", - "description": "The ID of the custom pattern to delete." }, - "custom_pattern_version": { - "type": [ - "string", - "null" - ], - "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + "cwes": [ + { + "cwe_id": "CWE-456", + "name": "A CWE 2.0" + } + ], + "cwe_ids": [ + "CWE-456" + ], + "credits": [ + { + "login": "monauser", + "type": "reporter" + } + ], + "credits_detailed": [ + { + "user": { + "login": "monauser", + "id": 2, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/monauser", + "html_url": "https://github.com/monauser", + "followers_url": "https://api.github.com/users/monauser/followers", + "following_url": "https://api.github.com/users/monauser/following{/other_user}", + "gists_url": "https://api.github.com/users/monauser/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monauser/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monauser/subscriptions", + "organizations_url": "https://api.github.com/users/monauser/orgs", + "repos_url": "https://api.github.com/users/monauser/repos", + "events_url": "https://api.github.com/users/monauser/events{/privacy}", + "received_events_url": "https://api.github.com/users/monauser/received_events", + "type": "User", + "site_admin": false + }, + "type": "reporter", + "state": "accepted" + } + ], + "collaborating_users": [ + { + "login": "octokitten", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octokitten_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octokitten", + "html_url": "https://github.com/octokitten", + "followers_url": "https://api.github.com/users/octokitten/followers", + "following_url": "https://api.github.com/users/octokitten/following{/other_user}", + "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", + "organizations_url": "https://api.github.com/users/octokitten/orgs", + "repos_url": "https://api.github.com/users/octokitten/repos", + "events_url": "https://api.github.com/users/octokitten/events{/privacy}", + "received_events_url": "https://api.github.com/users/octokitten/received_events", + "type": "User", + "site_admin": false + } + ], + "collaborating_teams": [ + { + "name": "Justice League", + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "permission": "admin", + "parent": null + } + ], + "private_fork": { + "id": 217723378, + "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", + "name": "octo-repo-ghsa-1234-5678-9012", + "full_name": "octo-org/octo-repo-ghsa-1234-5678-9012", + "owner": { + "login": "octo-org", + "id": 6811672, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", + "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octo-org", + "html_url": "https://github.com/octo-org", + "followers_url": "https://api.github.com/users/octo-org/followers", + "following_url": "https://api.github.com/users/octo-org/following{/other_user}", + "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", + "organizations_url": "https://api.github.com/users/octo-org/orgs", + "repos_url": "https://api.github.com/users/octo-org/repos", + "events_url": "https://api.github.com/users/octo-org/events{/privacy}", + "received_events_url": "https://api.github.com/users/octo-org/received_events", + "type": "Organization", + "site_admin": false + }, + "private": true, + "html_url": "https://github.com/octo-org/octo-repo-ghsa-1234-5678-9012", + "description": null, + "fork": false, + "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012", + "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/comments{/number}", + "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/commits{/sha}", + "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/contributors", + "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/deployments", + "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/downloads", + "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/events", + "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/forks", + "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/tags{/sha}", + "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/hooks", + "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues{/number}", + "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/labels{/name}", + "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/languages", + "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/merges", + "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/pulls{/number}", + "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/releases{/id}", + "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/stargazers", + "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/subscribers", + "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/subscription", + "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/tags", + "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/teams", + "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/trees{/sha}" } } - } - }, - "post_delete_action": { - "type": "string", - "description": "What to do with alerts associated with the deleted patterns.\n`delete_alerts` permanently removes the alerts.\n`resolve_alerts` resolves the alerts as \"pattern deleted\".\nDefaults to `delete_alerts` when not specified.", - "enum": [ - "delete_alerts", - "resolve_alerts" - ], - "default": "delete_alerts" - } - } - }, - "examples": { - "default": { - "value": { - "patterns": [ - { - "pattern_id": 2, - "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K" - } ] } } } } - } - }, - "responses": { - "204": { - "description": "All patterns deleted successfully." }, "400": { "description": "Bad Request", @@ -689040,32 +701225,6 @@ } } }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, "404": { "description": "Resource not found", "content": { @@ -689091,53 +701250,25 @@ } } } - }, - "412": { - "description": "Precondition Failed", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "security-advisories", + "subcategory": "repository-advisories" } - } - }, - "/repos/{owner}/{repo}/secret-scanning/custom-patterns/{pattern_id}": { - "patch": { - "summary": "Update a repository custom pattern", - "description": "Updates a secret scanning custom pattern for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + }, + "post": { + "summary": "Create a repository security advisory", + "description": "Creates a new repository security advisory.\n\nIn order to create a draft repository security advisory, the authenticated user must be a security manager or administrator of that repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", "tags": [ - "secret-scanning" + "security-advisories" ], - "operationId": "secret-scanning/update-repo-custom-pattern", + "operationId": "security-advisories/create-repository-advisory", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#update-a-repository-custom-pattern" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "custom-patterns" + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#create-a-repository-security-advisory" }, "parameters": [ { @@ -689157,15 +701288,6 @@ "schema": { "type": "string" } - }, - { - "name": "pattern_id", - "in": "path", - "required": true, - "schema": { - "type": "integer" - }, - "description": "The ID of the custom pattern." } ], "requestBody": { @@ -689173,87 +701295,260 @@ "content": { "application/json": { "schema": { - "title": "Secret Scanning Custom Pattern To Update", - "description": "Fields to update on a custom pattern. At least one updatable field (`pattern`, `start_delimiter`, `end_delimiter`, `must_match`, or `must_not_match`) must also be provided. Only provided fields will be updated.", - "required": [ - "custom_pattern_version" - ], - "anyOf": [ - { - "required": [ - "pattern" - ] - }, - { - "required": [ - "start_delimiter" - ] - }, - { - "required": [ - "end_delimiter" - ] - }, - { - "required": [ - "must_match" - ] - }, - { - "required": [ - "must_not_match" - ] - } - ], + "type": "object", "properties": { - "pattern": { + "summary": { "type": "string", - "description": "The updated regular expression of the custom pattern." + "description": "A short summary of the advisory.", + "maxLength": 1024 }, - "start_delimiter": { + "description": { "type": "string", - "description": "The updated start delimiter regex for the custom pattern." + "description": "A detailed description of what the advisory impacts.", + "maxLength": 65535 }, - "end_delimiter": { - "type": "string", - "description": "The updated end delimiter regex for the custom pattern." + "cve_id": { + "type": [ + "string", + "null" + ], + "description": "The Common Vulnerabilities and Exposures (CVE) ID." }, - "must_match": { + "vulnerabilities": { "type": "array", - "description": "Updated list of regexes that the secret must match.", + "description": "A product affected by the vulnerability detailed in a repository security advisory.", "items": { - "type": "string" + "type": "object", + "properties": { + "package": { + "description": "The name of the package affected by the vulnerability.", + "type": "object", + "properties": { + "ecosystem": { + "type": "string", + "description": "The package's language or package management ecosystem.", + "enum": [ + "rubygems", + "npm", + "pip", + "maven", + "nuget", + "composer", + "go", + "rust", + "erlang", + "actions", + "pub", + "other", + "swift" + ] + }, + "name": { + "type": [ + "string", + "null" + ], + "description": "The unique package name within its ecosystem." + } + }, + "required": [ + "ecosystem" + ] + }, + "vulnerable_version_range": { + "type": [ + "string", + "null" + ], + "description": "The range of the package versions affected by the vulnerability." + }, + "patched_versions": { + "type": [ + "string", + "null" + ], + "description": "The package version(s) that resolve the vulnerability." + }, + "vulnerable_functions": { + "type": [ + "array", + "null" + ], + "description": "The functions in the package that are affected.", + "items": { + "type": "string" + } + } + }, + "required": [ + "package" + ], + "additionalProperties": false } }, - "must_not_match": { - "type": "array", - "description": "Updated list of regexes that the secret must not match.", + "cwe_ids": { + "type": [ + "array", + "null" + ], + "description": "A list of Common Weakness Enumeration (CWE) IDs.", "items": { "type": "string" } }, - "custom_pattern_version": { + "credits": { + "type": [ + "array", + "null" + ], + "description": "A list of users receiving credit for their participation in the security advisory.", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string", + "description": "The username of the user credited." + }, + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + } + }, + "required": [ + "login", + "type" + ], + "additionalProperties": false + } + }, + "severity": { "type": [ "string", "null" ], - "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + "description": "The severity of the advisory. You must choose between setting this field or `cvss_vector_string`.", + "enum": [ + "critical", + "high", + "medium", + "low", + null + ] + }, + "cvss_vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS vector that calculates the severity of the advisory. You must choose between setting this field or `severity`." + }, + "start_private_fork": { + "type": "boolean", + "description": "Whether to create a temporary private fork of the repository to collaborate on a fix.", + "default": false } - } + }, + "required": [ + "summary", + "description", + "vulnerabilities" + ], + "additionalProperties": false }, "examples": { "default": { "value": { - "pattern": "updated_secret_[0-9A-Z]{16}", - "start_delimiter": "[^0-9A-Za-z]", - "end_delimiter": "[^0-9A-Za-z]", - "must_match": [ - "updated_secret_[0-9]{2}*" + "summary": "A new important advisory", + "description": "A more in-depth description of what the problem is.", + "severity": "high", + "cve_id": null, + "vulnerabilities": [ + { + "package": { + "name": "a-package", + "ecosystem": "npm" + }, + "vulnerable_version_range": "< 1.0.0", + "patched_versions": "1.0.0", + "vulnerable_functions": [ + "important_function" + ] + } ], - "must_not_match": [ - "updated_secret_1234567890ABCDEF" + "cwe_ids": [ + "CWE-1101", + "CWE-20" ], - "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K" + "credits": [ + { + "login": "monalisa", + "type": "reporter" + }, + { + "login": "octocat", + "type": "analyst" + } + ] + } + }, + "withVectorString": { + "value": { + "summary": "A new important advisory", + "description": "A more in-depth description of what the problem is.", + "cvss_vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L", + "cve_id": null, + "vulnerabilities": [ + { + "package": { + "name": "a-package", + "ecosystem": "npm" + }, + "vulnerable_version_range": "< 1.0.0", + "patched_versions": "1.0.0", + "vulnerable_functions": [ + "important_function" + ] + } + ], + "cwe_ids": [ + "CWE-1101", + "CWE-20" + ], + "credits": [ + { + "login": "monalisa", + "type": "reporter" + }, + { + "login": "octocat", + "type": "analyst" + } + ] + } + }, + "minimal": { + "value": { + "summary": "A new important advisory", + "description": "A more in-depth description of what the problem is.", + "vulnerabilities": [ + { + "package": { + "ecosystem": "npm" + } + } + ] } } } @@ -689261,1182 +701556,770 @@ } }, "responses": { - "200": { - "description": "Pattern updated successfully.", + "201": { + "description": "Response", "content": { "application/json": { "schema": { - "title": "Secret Scanning Custom Pattern", - "description": "A custom pattern for secret scanning.", + "description": "A repository security advisory.", "type": "object", "properties": { - "id": { - "type": "integer", - "description": "The ID of the custom pattern." - }, - "name": { - "type": "string", - "description": "The name of the custom pattern." - }, - "pattern": { - "type": "string", - "description": "The regular expression of the custom pattern." - }, - "slug": { - "type": "string", - "description": "A URL-friendly identifier for the custom pattern, derived from its name." - }, - "state": { + "ghsa_id": { "type": "string", - "description": "The state of the custom pattern.", - "enum": [ - "published", - "unpublished" - ] - }, - "push_protection_enabled": { - "type": "boolean", - "description": "Whether push protection is enabled for this custom pattern." - }, - "start_delimiter": { - "type": [ - "string", - "null" - ], - "description": "The start delimiter regex for the custom pattern." - }, - "end_delimiter": { - "type": [ - "string", - "null" - ], - "description": "The end delimiter regex for the custom pattern." - }, - "must_match": { - "type": [ - "array", - "null" - ], - "description": "List of regexes that the secret must match.", - "items": { - "type": "string" - } - }, - "must_not_match": { - "type": [ - "array", - "null" - ], - "description": "List of regexes that the secret must not match.", - "items": { - "type": "string" - } + "description": "The GitHub Security Advisory ID.", + "readOnly": true }, - "custom_pattern_version": { + "cve_id": { "type": [ "string", "null" ], - "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + "description": "The Common Vulnerabilities and Exposures (CVE) ID." }, - "created_at": { + "url": { "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was created in ISO 8601 format." + "format": "uri", + "description": "The API URL for the advisory.", + "readOnly": true }, - "updated_at": { + "html_url": { "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was last updated in ISO 8601 format." - } - }, - "required": [ - "id", - "name", - "pattern", - "slug", - "state", - "push_protection_enabled" - ] - }, - "examples": { - "default": { - "value": { - "id": 1, - "name": "Example Custom Pattern", - "pattern": "updated_secret_[0-9A-Z]{16}", - "slug": "example_custom_pattern", - "state": "published", - "push_protection_enabled": true, - "start_delimiter": "[^0-9A-Za-z]", - "end_delimiter": "[^0-9A-Za-z]", - "must_match": [ - "updated_secret_[0-9]{2}*" - ], - "must_not_match": [ - "updated_secret_1234567890ABCDEF" - ], - "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K", - "created_at": "2024-01-15T10:30:00Z", - "updated_at": "2024-06-01T12:00:00Z" - } - } - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" + "format": "uri", + "description": "The URL for the advisory.", + "readOnly": true }, - "status": { - "type": "string" - } - } - } - }, - "application/scim+json": { - "schema": { - "title": "Scim Error", - "description": "Scim Error", - "type": "object", - "properties": { - "message": { - "type": [ - "string", - "null" - ] + "summary": { + "type": "string", + "description": "A short summary of the advisory.", + "maxLength": 1024 }, - "documentation_url": { + "description": { "type": [ "string", "null" - ] + ], + "description": "A detailed description of what the advisory entails.", + "maxLength": 65535 }, - "detail": { + "severity": { "type": [ "string", "null" + ], + "description": "The severity of the advisory.", + "enum": [ + "critical", + "high", + "medium", + "low", + null ] }, - "status": { - "type": "integer" - }, - "scimType": { + "author": { + "readOnly": true, + "description": "The author of the advisory.", + "allOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ], "type": [ - "string", "null" ] }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "412": { - "description": "Precondition Failed", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" + "publisher": { + "readOnly": true, + "description": "The publisher of the advisory.", + "allOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ], + "type": [ + "null" + ] }, - "errors": { + "identifiers": { "type": "array", "items": { "type": "object", - "required": [ - "code" - ], "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" + "type": { + "type": "string", + "description": "The type of identifier.", + "enum": [ + "CVE", + "GHSA" + ] }, "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] + "type": "string", + "description": "The identifier value." } - } - } - } - } - } - } - } - } - } - } - }, - "/repos/{owner}/{repo}/secret-scanning/push-protection-bypasses": { - "post": { - "summary": "Create a push protection bypass", - "description": "Creates a bypass for a previously push protected secret.\n\nThe authenticated user must be the original author of the committed secret.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint.", - "operationId": "secret-scanning/create-push-protection-bypass", - "tags": [ - "secret-scanning" - ], - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#create-a-push-protection-bypass" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "reason": { - "description": "The reason for bypassing push protection.", - "type": "string", - "enum": [ - "false_positive", - "used_in_tests", - "will_fix_later" - ] - }, - "placeholder_id": { - "description": "The ID of the push protection bypass placeholder. This value is returned on any push protected routes.", - "type": "string" - } - }, - "required": [ - "reason", - "placeholder_id" - ] - }, - "examples": { - "default": { - "value": { - "reason": "will_fix_later", - "placeholder_id": "2k4dM4tseyC5lPIsjl5emX9sPNk" - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "reason": { - "description": "The reason for bypassing push protection.", + }, + "required": [ + "type", + "value" + ] + }, + "readOnly": true + }, + "state": { "type": "string", + "description": "The state of the advisory.", "enum": [ - "false_positive", - "used_in_tests", - "will_fix_later" + "published", + "closed", + "withdrawn", + "draft", + "triage" ] }, - "expire_at": { + "created_at": { "type": [ "string", "null" ], "format": "date-time", - "description": "The time that the bypass will expire in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "token_type": { - "type": "string", - "description": "The token type this bypass is for." - } - } - }, - "examples": { - "default": { - "value": { - "reason": "will_fix_later", - "expire_at": "2020-11-06T18:18:30Z", - "token_type": "mailchimp_api_key" - } - } - } - } - } - }, - "403": { - "description": "User does not have enough permissions to perform this action." - }, - "404": { - "description": "Placeholder ID not found, or push protection is disabled on this repository." - }, - "422": { - "description": "Bad request, input data missing or incorrect." - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" + "description": "The date and time of when the advisory was created, in ISO 8601 format.", + "readOnly": true }, - "message": { - "type": "string" + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was last updated, in ISO 8601 format.", + "readOnly": true }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "enabledForGitHubApps": true, - "githubCloudOnly": false, - "category": "secret-scanning", - "subcategory": "secret-scanning" - } - } - }, - "/repos/{owner}/{repo}/secret-scanning/scan-history": { - "get": { - "summary": "Get secret scanning scan history for a repository", - "description": "Lists the latest default incremental and backfill scans by type for a repository.\n\n> [!NOTE]\n> This endpoint requires [GitHub Advanced Security](https://docs.github.com/get-started/learning-about-github/about-github-advanced-security).\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "tags": [ - "secret-scanning" - ], - "operationId": "secret-scanning/get-scan-history", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#get-secret-scanning-scan-history-for-a-repository" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "404": { - "description": "Repository does not have GitHub Advanced Security or secret scanning enabled" - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was published, in ISO 8601 format.", + "readOnly": true }, - "message": { - "type": "string" + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was closed, in ISO 8601 format.", + "readOnly": true }, - "documentation_url": { - "type": "string" - } - } - } - } - } - }, - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "incremental_scans": { - "type": "array", - "items": { - "description": "Information on a single scan performed by secret scanning on the repository", - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of scan" - }, - "status": { - "type": "string", - "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." - }, - "completed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was completed. Empty if the scan is running" - }, - "started_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was started. Empty if the scan is pending" - } - } - } + "withdrawn_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was withdrawn, in ISO 8601 format.", + "readOnly": true }, - "pattern_update_scans": { - "type": "array", - "items": { - "description": "Information on a single scan performed by secret scanning on the repository", - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of scan" - }, - "status": { - "type": "string", - "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." - }, - "completed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was completed. Empty if the scan is running" - }, - "started_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was started. Empty if the scan is pending" - } + "submission": { + "type": [ + "object", + "null" + ], + "readOnly": true, + "properties": { + "accepted": { + "type": "boolean", + "description": "Whether a private vulnerability report was accepted by the repository's administrators.", + "readOnly": true } - } + }, + "required": [ + "accepted" + ] }, - "backfill_scans": { - "type": "array", + "vulnerabilities": { + "type": [ + "array", + "null" + ], "items": { - "description": "Information on a single scan performed by secret scanning on the repository", + "description": "A product affected by the vulnerability detailed in a repository security advisory.", "type": "object", "properties": { - "type": { - "type": "string", - "description": "The type of scan" - }, - "status": { - "type": "string", - "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." - }, - "completed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was completed. Empty if the scan is running" - }, - "started_at": { + "package": { + "description": "The name of the package affected by the vulnerability.", "type": [ - "string", + "object", "null" ], - "format": "date-time", - "description": "The time that the scan was started. Empty if the scan is pending" - } - } - } - }, - "custom_pattern_backfill_scans": { - "type": "array", - "items": { - "allOf": [ - { - "description": "Information on a single scan performed by secret scanning on the repository", - "type": "object", "properties": { - "type": { - "type": "string", - "description": "The type of scan" - }, - "status": { + "ecosystem": { "type": "string", - "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." - }, - "completed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was completed. Empty if the scan is running" + "description": "The package's language or package management ecosystem.", + "enum": [ + "rubygems", + "npm", + "pip", + "maven", + "nuget", + "composer", + "go", + "rust", + "erlang", + "actions", + "pub", + "other", + "swift" + ] }, - "started_at": { + "name": { "type": [ "string", "null" ], - "format": "date-time", - "description": "The time that the scan was started. Empty if the scan is pending" - } - } - }, - { - "type": "object", - "properties": { - "pattern_name": { - "type": "string", - "description": "Name of the custom pattern for custom pattern scans" - }, - "pattern_scope": { - "type": "string", - "description": "Level at which the custom pattern is defined, one of \"repository\", \"organization\", or \"enterprise\"" + "description": "The unique package name within its ecosystem." } - } - } - ] - } - }, - "generic_secrets_backfill_scans": { - "type": "array", - "items": { - "description": "Information on a single scan performed by secret scanning on the repository", - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of scan" - }, - "status": { - "type": "string", - "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "required": [ + "ecosystem", + "name" + ] }, - "completed_at": { + "vulnerable_version_range": { "type": [ "string", "null" ], - "format": "date-time", - "description": "The time that the scan was completed. Empty if the scan is running" + "description": "The range of the package versions affected by the vulnerability." }, - "started_at": { + "patched_versions": { "type": [ "string", "null" ], - "format": "date-time", - "description": "The time that the scan was started. Empty if the scan is pending" + "description": "The package version(s) that resolve the vulnerability." + }, + "vulnerable_functions": { + "type": [ + "array", + "null" + ], + "description": "The functions in the package that are affected.", + "items": { + "type": "string" + } } - } - } - } - } - }, - "examples": { - "default": { - "value": { - "incremental_scans": [ - { - "type": "git", - "status": "completed", - "completed_at": "2024-10-07T02:47:00Z" - } - ], - "backfill_scans": [ - { - "type": "git", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:50:00Z" - }, - { - "type": "issue", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:49:00Z" }, - { - "type": "discussion", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:48:00Z" - } - ], - "pattern_update_scans": [ - { - "type": "discussion", - "status": "in_progress", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:51:00Z" - } + "required": [ + "package", + "vulnerable_version_range", + "patched_versions", + "vulnerable_functions" + ], + "additionalProperties": false + } + }, + "cvss": { + "type": [ + "object", + "null" ], - "custom_pattern_backfill_scans": [ - { - "type": "git", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:55:00Z", - "pattern_slug": "my-custom-pattern", - "pattern_scope": "enterprise" + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS vector." }, - { - "type": "git", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:55:00Z", - "pattern_slug": "my-custom-pattern", - "pattern_scope": "organization" - } - ], - "generic_secrets_backfill_scans": [ - { - "type": "git", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:55:00Z" + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS score.", + "minimum": 0, + "maximum": 10, + "readOnly": true } - ] - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "secret-scanning" - } - } - }, - "/repos/{owner}/{repo}/security-advisories": { - "get": { - "summary": "List repository security advisories", - "description": "Lists security advisories in a repository.\n\nThe authenticated user can access unpublished security advisories from a repository if they are a security manager or administrator of that repository, or if they are a collaborator on any security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:read` scope to to get a published security advisory in a private repository, or any unpublished security advisory that the authenticated user has access to.", - "tags": [ - "security-advisories" - ], - "operationId": "security-advisories/list-repository-advisories", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#list-repository-security-advisories" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "direction", - "description": "The direction to sort the results by.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "asc", - "desc" - ], - "default": "desc" - } - }, - { - "name": "sort", - "description": "The property to sort the results by.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "created", - "updated", - "published" - ], - "default": "created" - } - }, - { - "name": "before", - "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for results before this cursor. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "after", - "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for results after this cursor. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "per_page", - "description": "The number of advisories to return per page. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "minimum": 1, - "maximum": 100, - "default": 30 - } - }, - { - "name": "state", - "description": "Filter by state of the repository advisories. Only advisories of this state will be returned.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "triage", - "draft", - "published", - "closed" - ] - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "description": "A repository security advisory.", - "type": "object", - "properties": { - "ghsa_id": { - "type": "string", - "description": "The GitHub Security Advisory ID.", - "readOnly": true - }, - "cve_id": { - "type": [ - "string", - "null" - ], - "description": "The Common Vulnerabilities and Exposures (CVE) ID." - }, - "url": { - "type": "string", - "format": "uri", - "description": "The API URL for the advisory.", - "readOnly": true - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The URL for the advisory.", - "readOnly": true - }, - "summary": { - "type": "string", - "description": "A short summary of the advisory.", - "maxLength": 1024 - }, - "description": { - "type": [ - "string", - "null" - ], - "description": "A detailed description of what the advisory entails.", - "maxLength": 65535 - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the advisory.", - "enum": [ - "critical", - "high", - "medium", - "low", - null - ] }, - "author": { - "readOnly": true, - "description": "The author of the advisory.", - "allOf": [ - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "required": [ + "vector_string", + "score" + ] + }, + "cvss_severities": { + "type": [ + "object", + "null" + ], + "properties": { + "cvss_v3": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS 3 vector 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" - ] + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS 3 score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } + }, + "required": [ + "vector_string", + "score" + ] + }, + "cvss_v4": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS 4 vector string." + }, + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS 4 score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } + }, + "required": [ + "vector_string", + "score" + ] + } + } + }, + "cwes": { + "type": [ + "array", + "null" + ], + "items": { + "type": "object", + "properties": { + "cwe_id": { + "type": "string", + "description": "The Common Weakness Enumeration (CWE) identifier." + }, + "name": { + "type": "string", + "description": "The name of the CWE.", + "readOnly": true } - ], - "type": [ - "null" + }, + "required": [ + "cwe_id", + "name" ] }, - "publisher": { - "readOnly": true, - "description": "The publisher of the advisory.", - "allOf": [ - { + "readOnly": true + }, + "cwe_ids": { + "type": [ + "array", + "null" + ], + "description": "A list of only the CWE IDs.", + "items": { + "type": "string" + } + }, + "credits": { + "type": [ + "array", + "null" + ], + "items": { + "type": "object", + "properties": { + "login": { + "type": "string", + "description": "The username of the user credited." + }, + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + } + } + } + }, + "credits_detailed": { + "type": [ + "array", + "null" + ], + "items": { + "description": "A credit given to a user for a repository security advisory.", + "type": "object", + "properties": { + "user": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -690603,363 +702486,531 @@ "type", "url" ] - } - ], - "type": [ - "null" - ] - }, - "identifiers": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of identifier.", - "enum": [ - "CVE", - "GHSA" - ] - }, - "value": { - "type": "string", - "description": "The identifier value." - } }, - "required": [ - "type", - "value" - ] - }, - "readOnly": true - }, - "state": { - "type": "string", - "description": "The state of the advisory.", - "enum": [ - "published", - "closed", - "withdrawn", - "draft", - "triage" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was created, in ISO 8601 format.", - "readOnly": true - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was last updated, in ISO 8601 format.", - "readOnly": true - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was published, in ISO 8601 format.", - "readOnly": true - }, - "closed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was closed, in ISO 8601 format.", - "readOnly": true - }, - "withdrawn_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was withdrawn, in ISO 8601 format.", - "readOnly": true - }, - "submission": { - "type": [ - "object", - "null" - ], - "readOnly": true, - "properties": { - "accepted": { - "type": "boolean", - "description": "Whether a private vulnerability report was accepted by the repository's administrators.", - "readOnly": true + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + }, + "state": { + "type": "string", + "description": "The state of the user's acceptance of the credit.", + "enum": [ + "accepted", + "declined", + "pending" + ] } }, "required": [ - "accepted" - ] - }, - "vulnerabilities": { - "type": [ - "array", - "null" + "user", + "type", + "state" ], - "items": { - "description": "A product affected by the vulnerability detailed in a repository security advisory.", - "type": "object", - "properties": { - "package": { - "description": "The name of the package affected by the vulnerability.", - "type": [ - "object", - "null" - ], - "properties": { - "ecosystem": { - "type": "string", - "description": "The package's language or package management ecosystem.", - "enum": [ - "rubygems", - "npm", - "pip", - "maven", - "nuget", - "composer", - "go", - "rust", - "erlang", - "actions", - "pub", - "other", - "swift" - ] - }, - "name": { - "type": [ - "string", - "null" - ], - "description": "The unique package name within its ecosystem." - } - }, - "required": [ - "ecosystem", - "name" - ] - }, - "vulnerable_version_range": { - "type": [ - "string", - "null" - ], - "description": "The range of the package versions affected by the vulnerability." - }, - "patched_versions": { - "type": [ - "string", - "null" - ], - "description": "The package version(s) that resolve the vulnerability." - }, - "vulnerable_functions": { - "type": [ - "array", - "null" - ], - "description": "The functions in the package that are affected.", - "items": { - "type": "string" - } - } - }, - "required": [ - "package", - "vulnerable_version_range", - "patched_versions", - "vulnerable_functions" - ], - "additionalProperties": false - } + "additionalProperties": false }, - "cvss": { - "type": [ - "object", - "null" - ], + "readOnly": true + }, + "collaborating_users": { + "type": [ + "array", + "null" + ], + "description": "A list of users that collaborate on the advisory.", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", "properties": { - "vector_string": { + "name": { "type": [ "string", "null" - ], - "description": "The CVSS vector." + ] }, - "score": { + "email": { "type": [ - "number", + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", "null" ], - "description": "The CVSS score.", - "minimum": 0, - "maximum": 10, - "readOnly": true + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } }, "required": [ - "vector_string", - "score" + "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" ] - }, - "cvss_severities": { - "type": [ - "object", - "null" - ], + } + }, + "collaborating_teams": { + "type": [ + "array", + "null" + ], + "description": "A list of teams that collaborate on the advisory.", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", "properties": { - "cvss_v3": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { "type": [ - "object", + "string", "null" - ], + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", "properties": { - "vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS 3 vector string." + "pull": { + "type": "boolean" }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS 3 score.", - "minimum": 0, - "maximum": 10, - "readOnly": true + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" } }, "required": [ - "vector_string", - "score" + "pull", + "triage", + "push", + "maintain", + "admin" ] }, - "cvss_v4": { - "type": [ - "object", - "null" + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" ], - "properties": { - "vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS 4 vector string." + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS 4 score.", - "minimum": 0, - "maximum": 10, - "readOnly": true + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] } - }, - "required": [ - "vector_string", - "score" ] } - } - }, - "cwes": { - "type": [ - "array", - "null" - ], - "items": { + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } + }, + "private_fork": { + "readOnly": true, + "description": "A temporary private fork of the advisory's repository for collaborating on a fix.", + "allOf": [ + { + "title": "Simple Repository", + "description": "A GitHub repository.", "type": "object", "properties": { - "cwe_id": { + "id": { + "type": "integer", + "format": "int64", + "description": "A unique identifier of the repository.", + "examples": [ + 1296269 + ] + }, + "node_id": { "type": "string", - "description": "The Common Weakness Enumeration (CWE) identifier." + "description": "The GraphQL identifier of the repository.", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] }, "name": { "type": "string", - "description": "The name of the CWE.", - "readOnly": true - } - }, - "required": [ - "cwe_id", - "name" - ] - }, - "readOnly": true - }, - "cwe_ids": { - "type": [ - "array", - "null" - ], - "description": "A list of only the CWE IDs.", - "items": { - "type": "string" - } - }, - "credits": { - "type": [ - "array", - "null" - ], - "items": { - "type": "object", - "properties": { - "login": { - "type": "string", - "description": "The username of the user credited." + "description": "The name of the repository.", + "examples": [ + "Hello-World" + ] }, - "type": { + "full_name": { "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" + "description": "The full, globally unique, name of the repository.", + "examples": [ + "octocat/Hello-World" ] - } - } - } - }, - "credits_detailed": { - "type": [ - "array", - "null" - ], - "items": { - "description": "A credit given to a user for a repository security advisory.", - "type": "object", - "properties": { - "user": { + }, + "owner": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -691127,1532 +703178,651 @@ "url" ] }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] + "private": { + "type": "boolean", + "description": "Whether the repository is private." }, - "state": { + "html_url": { "type": "string", - "description": "The state of the user's acceptance of the credit.", - "enum": [ - "accepted", - "declined", - "pending" + "format": "uri", + "description": "The URL to view the repository on GitHub.com.", + "examples": [ + "https://github.com/octocat/Hello-World" ] - } - }, - "required": [ - "user", - "type", - "state" - ], - "additionalProperties": false - }, - "readOnly": true - }, - "collaborating_users": { - "type": [ - "array", - "null" - ], - "description": "A list of users that collaborate on the advisory.", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { + }, + "description": { "type": [ "string", "null" + ], + "description": "The repository description.", + "examples": [ + "This your first repo!" ] }, - "email": { - "type": [ - "string", - "null" + "fork": { + "type": "boolean", + "description": "Whether the repository is a fork." + }, + "url": { + "type": "string", + "format": "uri", + "description": "The URL to get more information about the repository from the GitHub API.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" ] }, - "login": { + "archive_url": { "type": "string", + "description": "A template for the API URL to download the repository as an archive.", "examples": [ - "octocat" + "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" ] }, - "id": { - "type": "integer", - "format": "int64", + "assignees_url": { + "type": "string", + "description": "A template for the API URL to list the available assignees for issues in the repository.", "examples": [ - 1 + "https://api.github.com/repos/octocat/Hello-World/assignees{/user}" ] }, - "node_id": { + "blobs_url": { "type": "string", + "description": "A template for the API URL to create or retrieve a raw Git blob in the repository.", "examples": [ - "MDQ6VXNlcjE=" + "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" ] }, - "avatar_url": { + "branches_url": { "type": "string", - "format": "uri", + "description": "A template for the API URL to get information about branches in the repository.", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "https://api.github.com/repos/octocat/Hello-World/branches{/branch}" ] }, - "gravatar_id": { - "type": [ - "string", - "null" - ], + "collaborators_url": { + "type": "string", + "description": "A template for the API URL to get information about collaborators of the repository.", "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" ] }, - "url": { + "comments_url": { "type": "string", - "format": "uri", + "description": "A template for the API URL to get information about comments on the repository.", "examples": [ - "https://api.github.com/users/octocat" + "https://api.github.com/repos/octocat/Hello-World/comments{/number}" ] }, - "html_url": { + "commits_url": { "type": "string", - "format": "uri", + "description": "A template for the API URL to get information about commits on the repository.", "examples": [ - "https://github.com/octocat" + "https://api.github.com/repos/octocat/Hello-World/commits{/sha}" ] }, - "followers_url": { + "compare_url": { "type": "string", - "format": "uri", + "description": "A template for the API URL to compare two commits or refs.", "examples": [ - "https://api.github.com/users/octocat/followers" + "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" ] }, - "following_url": { + "contents_url": { "type": "string", + "description": "A template for the API URL to get the contents of the repository.", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "https://api.github.com/repos/octocat/Hello-World/contents/{+path}" ] }, - "gists_url": { + "contributors_url": { "type": "string", + "format": "uri", + "description": "A template for the API URL to list the contributors to the repository.", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "https://api.github.com/repos/octocat/Hello-World/contributors" ] }, - "starred_url": { + "deployments_url": { "type": "string", + "format": "uri", + "description": "The API URL to list the deployments of the repository.", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "https://api.github.com/repos/octocat/Hello-World/deployments" ] }, - "subscriptions_url": { + "downloads_url": { "type": "string", "format": "uri", + "description": "The API URL to list the downloads on the repository.", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "https://api.github.com/repos/octocat/Hello-World/downloads" ] }, - "organizations_url": { + "events_url": { "type": "string", "format": "uri", + "description": "The API URL to list the events of the repository.", "examples": [ - "https://api.github.com/users/octocat/orgs" + "https://api.github.com/repos/octocat/Hello-World/events" ] }, - "repos_url": { + "forks_url": { "type": "string", "format": "uri", + "description": "The API URL to list the forks of the repository.", "examples": [ - "https://api.github.com/users/octocat/repos" + "https://api.github.com/repos/octocat/Hello-World/forks" ] }, - "events_url": { + "git_commits_url": { "type": "string", + "description": "A template for the API URL to get information about Git commits of the repository.", "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" ] }, - "received_events_url": { + "git_refs_url": { "type": "string", - "format": "uri", + "description": "A template for the API URL to get information about Git refs of the repository.", "examples": [ - "https://api.github.com/users/octocat/received_events" + "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" ] }, - "type": { + "git_tags_url": { "type": "string", + "description": "A template for the API URL to get information about Git tags of the repository.", "examples": [ - "User" + "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { + "issue_comment_url": { "type": "string", + "description": "A template for the API URL to get information about issue comments on the repository.", "examples": [ - "\"2020-07-09T00:17:55Z\"" + "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" ] }, - "user_view_type": { + "issue_events_url": { "type": "string", + "description": "A template for the API URL to get information about issue events on the repository.", "examples": [ - "public" + "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}" ] - } - }, - "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" - ] - } - }, - "collaborating_teams": { - "type": [ - "array", - "null" - ], - "description": "A list of teams that collaborate on the advisory.", - "items": { - "title": "Team", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "type": "string" }, - "slug": { - "type": "string" - }, - "description": { - "type": [ - "string", - "null" + "issues_url": { + "type": "string", + "description": "A template for the API URL to get information about issues on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues{/number}" ] }, - "privacy": { - "type": "string" - }, - "notification_setting": { - "type": "string" - }, - "permission": { - "type": "string" - }, - "permissions": { - "type": "object", - "properties": { - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - }, - "admin": { - "type": "boolean" - } - }, - "required": [ - "pull", - "triage", - "push", - "maintain", - "admin" + "keys_url": { + "type": "string", + "description": "A template for the API URL to get information about deploy keys on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}" ] }, - "url": { + "labels_url": { "type": "string", - "format": "uri" + "description": "A template for the API URL to get information about labels of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] }, - "html_url": { + "languages_url": { "type": "string", "format": "uri", + "description": "The API URL to get information about the languages of the repository.", "examples": [ - "https://github.com/orgs/rails/teams/core" + "https://api.github.com/repos/octocat/Hello-World/languages" ] }, - "members_url": { - "type": "string" + "merges_url": { + "type": "string", + "format": "uri", + "description": "The API URL to merge branches in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/merges" + ] }, - "repositories_url": { + "milestones_url": { "type": "string", - "format": "uri" + "description": "A template for the API URL to get information about milestones of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] }, - "type": { - "description": "The ownership type of the team", + "notifications_url": { "type": "string", - "enum": [ - "enterprise", - "organization" + "description": "A template for the API URL to get information about notifications on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" ] }, - "access_source": { - "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "pulls_url": { "type": "string", - "enum": [ - "direct", - "organization", - "enterprise" - ], + "description": "A template for the API URL to get information about pull requests on the repository.", "examples": [ - "direct" + "https://api.github.com/repos/octocat/Hello-World/pulls{/number}" ] }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", + "releases_url": { + "type": "string", + "description": "A template for the API URL to get information about releases on the repository.", "examples": [ - 37 + "https://api.github.com/repos/octocat/Hello-World/releases{/id}" ] }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", + "stargazers_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the stargazers on the repository.", "examples": [ - 42 + "https://api.github.com/repos/octocat/Hello-World/stargazers" ] }, - "parent": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Team Simple", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the team", - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VGVhbTE=" - ] - }, - "url": { - "description": "URL for the team", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1" - ] - }, - "members_url": { - "type": "string", - "examples": [ - "https://api.github.com/organizations/1/team/1/members{/member}" - ] - }, - "name": { - "description": "Name of the team", - "type": "string", - "examples": [ - "Justice League" - ] - }, - "description": { - "description": "Description of the team", - "type": [ - "string", - "null" - ], - "examples": [ - "A great team." - ] - }, - "permission": { - "description": "Permission that the team will have for its repositories", - "type": "string", - "examples": [ - "admin" - ] - }, - "privacy": { - "description": "The level of privacy this team should have", - "type": "string", - "examples": [ - "closed" - ] - }, - "notification_setting": { - "description": "The notification setting the team has set", - "type": "string", - "examples": [ - "notifications_enabled" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "repositories_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1/repos" - ] - }, - "slug": { - "type": "string", - "examples": [ - "justice-league" - ] - }, - "ldap_dn": { - "description": "Distinguished Name (DN) that team maps to within LDAP environment", - "type": "string", - "examples": [ - "uid=example,ou=users,dc=github,dc=com" - ] - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "type" - ] - } + "statuses_url": { + "type": "string", + "description": "A template for the API URL to get information about statuses of a commit.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}" ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "parent", - "type" - ] - } - }, - "private_fork": { - "readOnly": true, - "description": "A temporary private fork of the advisory's repository for collaborating on a fix.", - "allOf": [ - { - "title": "Simple Repository", - "description": "A GitHub repository.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "format": "int64", - "description": "A unique identifier of the repository.", - "examples": [ - 1296269 - ] - }, - "node_id": { - "type": "string", - "description": "The GraphQL identifier of the repository.", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "type": "string", - "description": "The name of the repository.", - "examples": [ - "Hello-World" - ] - }, - "full_name": { - "type": "string", - "description": "The full, globally unique, name of the repository.", - "examples": [ - "octocat/Hello-World" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - }, - "private": { - "type": "boolean", - "description": "Whether the repository is private." - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The URL to view the repository on GitHub.com.", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "description": "The repository description.", - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean", - "description": "Whether the repository is a fork." - }, - "url": { - "type": "string", - "format": "uri", - "description": "The URL to get more information about the repository from the GitHub API.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "description": "A template for the API URL to download the repository as an archive.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "description": "A template for the API URL to list the available assignees for issues in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "description": "A template for the API URL to create or retrieve a raw Git blob in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "description": "A template for the API URL to get information about branches in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "description": "A template for the API URL to get information about collaborators of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "description": "A template for the API URL to get information about comments on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "description": "A template for the API URL to get information about commits on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "description": "A template for the API URL to compare two commits or refs.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "description": "A template for the API URL to get the contents of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "description": "A template for the API URL to list the contributors to the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the deployments of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the downloads on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the events of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the forks of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "description": "A template for the API URL to get information about Git commits of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "description": "A template for the API URL to get information about Git refs of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "description": "A template for the API URL to get information about Git tags of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "issue_comment_url": { - "type": "string", - "description": "A template for the API URL to get information about issue comments on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "description": "A template for the API URL to get information about issue events on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "description": "A template for the API URL to get information about issues on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "description": "A template for the API URL to get information about deploy keys on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "description": "A template for the API URL to get information about labels of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get information about the languages of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "description": "The API URL to merge branches in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "description": "A template for the API URL to get information about milestones of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "description": "A template for the API URL to get information about notifications on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "description": "A template for the API URL to get information about pull requests on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "description": "A template for the API URL to get information about releases on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the stargazers on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "description": "A template for the API URL to get information about statuses of a commit.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the subscribers on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "description": "The API URL to subscribe to notifications for this repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get information about tags on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the teams on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "description": "A template for the API URL to create or retrieve a raw Git tree of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "hooks_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the hooks on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/hooks" - ] - } }, - "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" - ] - } - ], - "type": [ - "null" - ] - } - }, - "required": [ - "ghsa_id", - "cve_id", - "url", - "html_url", - "summary", - "description", - "severity", - "author", - "publisher", - "identifiers", - "state", - "created_at", - "updated_at", - "published_at", - "closed_at", - "withdrawn_at", - "submission", - "vulnerabilities", - "cvss", - "cwes", - "cwe_ids", - "credits", - "credits_detailed", - "collaborating_users", - "collaborating_teams", - "private_fork" - ], - "additionalProperties": false - } + "subscribers_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the subscribers on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "description": "The API URL to subscribe to notifications for this repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get information about tags on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the teams on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "description": "A template for the API URL to create or retrieve a raw Git tree of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the hooks on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/hooks" + ] + } + }, + "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" + ] + } + ], + "type": [ + "null" + ] + } + }, + "required": [ + "ghsa_id", + "cve_id", + "url", + "html_url", + "summary", + "description", + "severity", + "author", + "publisher", + "identifiers", + "state", + "created_at", + "updated_at", + "published_at", + "closed_at", + "withdrawn_at", + "submission", + "vulnerabilities", + "cvss", + "cwes", + "cwe_ids", + "credits", + "credits_detailed", + "collaborating_users", + "collaborating_teams", + "private_fork" + ], + "additionalProperties": false }, "examples": { "default": { - "value": [ - { - "ghsa_id": "GHSA-abcd-1234-efgh", - "cve_id": "CVE-2050-00000", - "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", - "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", - "summary": "A short summary of the advisory.", - "description": "A detailed description of what the advisory entails.", - "severity": "critical", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "publisher": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "value": { + "ghsa_id": "GHSA-abcd-1234-efgh", + "cve_id": "CVE-2050-00000", + "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", + "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", + "summary": "A short summary of the advisory.", + "description": "A detailed description of what the advisory entails.", + "severity": "critical", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "publisher": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "identifiers": [ + { + "type": "GHSA", + "value": "GHSA-abcd-1234-efgh" }, - "identifiers": [ - { - "type": "GHSA", - "value": "GHSA-abcd-1234-efgh" + { + "type": "CVE", + "value": "CVE-2050-00000" + } + ], + "state": "published", + "created_at": "2020-01-01T00:00:00Z", + "updated_at": "2020-01-02T00:00:00Z", + "published_at": "2020-01-03T00:00:00Z", + "closed_at": null, + "withdrawn_at": null, + "submission": null, + "vulnerabilities": [ + { + "package": { + "ecosystem": "pip", + "name": "a-package" }, - { - "type": "CVE", - "value": "CVE-2050-00000" - } - ], - "state": "published", - "created_at": "2020-01-01T00:00:00Z", - "updated_at": "2020-01-02T00:00:00Z", - "published_at": "2020-01-03T00:00:00Z", - "closed_at": null, - "withdrawn_at": null, - "submission": null, - "vulnerabilities": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" - ] + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", + "vulnerable_functions": [ + "function1" + ] + }, + { + "package": { + "ecosystem": "pip", + "name": "another-package" }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" - ] - } - ], - "cvss": { + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" + ] + } + ], + "cvss": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 + }, + "cvss_severities": { + "cvss_v3": { "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "score": 9.8 }, - "cvss_severities": { - "cvss_v3": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 - }, - "cvss_v4": { - "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", - "score": 9.3 - } - }, - "cwes": [ - { - "cwe_id": "CWE-123", - "name": "A CWE" - } - ], - "cwe_ids": [ - "CWE-123" - ], - "credits": [ - { + "cvss_v4": { + "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", + "score": 9.3 + } + }, + "cwes": [ + { + "cwe_id": "CWE-123", + "name": "A CWE" + } + ], + "cwe_ids": [ + "CWE-123" + ], + "credits": [ + { + "login": "octocat", + "type": "analyst" + } + ], + "credits_detailed": [ + { + "user": { "login": "octocat", - "type": "analyst" - } - ], - "credits_detailed": [ - { - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "type": "analyst", - "state": "accepted" - } - ], - "collaborating_users": [ - { - "login": "octokitten", "id": 1, "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octokitten_happy.gif", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", "gravatar_id": "", - "url": "https://api.github.com/users/octokitten", - "html_url": "https://github.com/octokitten", - "followers_url": "https://api.github.com/users/octokitten/followers", - "following_url": "https://api.github.com/users/octokitten/following{/other_user}", - "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", - "organizations_url": "https://api.github.com/users/octokitten/orgs", - "repos_url": "https://api.github.com/users/octokitten/repos", - "events_url": "https://api.github.com/users/octokitten/events{/privacy}", - "received_events_url": "https://api.github.com/users/octokitten/received_events", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", "type": "User", "site_admin": false - } - ], - "collaborating_teams": [ - { - "name": "Justice League", - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "permission": "admin", - "parent": null - } - ], - "private_fork": null - }, - { - "ghsa_id": "GHSA-1234-5678-9012", - "cve_id": "CVE-2051-0000", - "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-1234-5678-9012", - "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-1234-5678-9012", - "summary": "A short summary of the advisory.", - "description": "A detailed description of what the advisory entails.", - "severity": "low", - "author": { - "login": "monauser", - "id": 2, + }, + "type": "analyst", + "state": "accepted" + } + ], + "collaborating_users": [ + { + "login": "octokitten", + "id": 1, "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "avatar_url": "https://github.com/images/error/octokitten_happy.gif", "gravatar_id": "", - "url": "https://api.github.com/users/monauser", - "html_url": "https://github.com/monauser", - "followers_url": "https://api.github.com/users/monauser/followers", - "following_url": "https://api.github.com/users/monauser/following{/other_user}", - "gists_url": "https://api.github.com/users/monauser/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monauser/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monauser/subscriptions", - "organizations_url": "https://api.github.com/users/monauser/orgs", - "repos_url": "https://api.github.com/users/monauser/repos", - "events_url": "https://api.github.com/users/monauser/events{/privacy}", - "received_events_url": "https://api.github.com/users/monauser/received_events", + "url": "https://api.github.com/users/octokitten", + "html_url": "https://github.com/octokitten", + "followers_url": "https://api.github.com/users/octokitten/followers", + "following_url": "https://api.github.com/users/octokitten/following{/other_user}", + "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", + "organizations_url": "https://api.github.com/users/octokitten/orgs", + "repos_url": "https://api.github.com/users/octokitten/repos", + "events_url": "https://api.github.com/users/octokitten/events{/privacy}", + "received_events_url": "https://api.github.com/users/octokitten/received_events", "type": "User", "site_admin": false - }, - "publisher": { - "login": "monalisa", - "id": 3, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", + } + ], + "collaborating_teams": [ + { + "name": "Justice League", + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "permission": "admin", + "parent": null + } + ], + "private_fork": { + "id": 217723378, + "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", + "name": "octo-repo-ghsa-abcd-1234-efgh", + "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", + "owner": { + "login": "octo-org", + "id": 6811672, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", + "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", "gravatar_id": "", - "url": "https://api.github.com/users/monalisa", - "html_url": "https://github.com/monalisa", - "followers_url": "https://api.github.com/users/monalisa/followers", - "following_url": "https://api.github.com/users/monalisa/following{/other_user}", - "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", - "organizations_url": "https://api.github.com/users/monalisa/orgs", - "repos_url": "https://api.github.com/users/monalisa/repos", - "events_url": "https://api.github.com/users/monalisa/events{/privacy}", - "received_events_url": "https://api.github.com/users/monalisa/received_events", - "type": "User", + "url": "https://api.github.com/users/octo-org", + "html_url": "https://github.com/octo-org", + "followers_url": "https://api.github.com/users/octo-org/followers", + "following_url": "https://api.github.com/users/octo-org/following{/other_user}", + "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", + "organizations_url": "https://api.github.com/users/octo-org/orgs", + "repos_url": "https://api.github.com/users/octo-org/repos", + "events_url": "https://api.github.com/users/octo-org/events{/privacy}", + "received_events_url": "https://api.github.com/users/octo-org/received_events", + "type": "Organization", "site_admin": false }, - "identifiers": [ - { - "type": "GHSA", - "value": "GHSA-1234-5678-9012" - }, - { - "type": "CVE", - "value": "CVE-2051-00000" - } - ], - "state": "published", - "created_at": "2020-01-03T00:00:00Z", - "updated_at": "2020-01-04T00:00:00Z", - "published_at": "2020-01-04T00:00:00Z", - "closed_at": null, - "withdrawn_at": null, - "submission": { - "accepted": true - }, - "vulnerabilities": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" - ] - }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" - ] - } - ], - "cvss": { - "vector_string": "AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N", - "score": 1.6 - }, - "cvss_severities": { - "cvss_v3": { - "vector_string": "CVSS:3.1/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N", - "score": 1.6 - }, - "cvss_v4": { - "vector_string": "CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", - "score": 7.1 - } - }, - "cwes": [ - { - "cwe_id": "CWE-456", - "name": "A CWE 2.0" - } - ], - "cwe_ids": [ - "CWE-456" - ], - "credits": [ - { - "login": "monauser", - "type": "reporter" - } - ], - "credits_detailed": [ - { - "user": { - "login": "monauser", - "id": 2, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/monauser", - "html_url": "https://github.com/monauser", - "followers_url": "https://api.github.com/users/monauser/followers", - "following_url": "https://api.github.com/users/monauser/following{/other_user}", - "gists_url": "https://api.github.com/users/monauser/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monauser/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monauser/subscriptions", - "organizations_url": "https://api.github.com/users/monauser/orgs", - "repos_url": "https://api.github.com/users/monauser/repos", - "events_url": "https://api.github.com/users/monauser/events{/privacy}", - "received_events_url": "https://api.github.com/users/monauser/received_events", - "type": "User", - "site_admin": false - }, - "type": "reporter", - "state": "accepted" - } - ], - "collaborating_users": [ - { - "login": "octokitten", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octokitten_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octokitten", - "html_url": "https://github.com/octokitten", - "followers_url": "https://api.github.com/users/octokitten/followers", - "following_url": "https://api.github.com/users/octokitten/following{/other_user}", - "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", - "organizations_url": "https://api.github.com/users/octokitten/orgs", - "repos_url": "https://api.github.com/users/octokitten/repos", - "events_url": "https://api.github.com/users/octokitten/events{/privacy}", - "received_events_url": "https://api.github.com/users/octokitten/received_events", - "type": "User", - "site_admin": false - } - ], - "collaborating_teams": [ - { - "name": "Justice League", - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "permission": "admin", - "parent": null - } - ], - "private_fork": { - "id": 217723378, - "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", - "name": "octo-repo-ghsa-1234-5678-9012", - "full_name": "octo-org/octo-repo-ghsa-1234-5678-9012", - "owner": { - "login": "octo-org", - "id": 6811672, - "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", - "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/octo-org", - "html_url": "https://github.com/octo-org", - "followers_url": "https://api.github.com/users/octo-org/followers", - "following_url": "https://api.github.com/users/octo-org/following{/other_user}", - "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", - "organizations_url": "https://api.github.com/users/octo-org/orgs", - "repos_url": "https://api.github.com/users/octo-org/repos", - "events_url": "https://api.github.com/users/octo-org/events{/privacy}", - "received_events_url": "https://api.github.com/users/octo-org/received_events", - "type": "Organization", - "site_admin": false - }, - "private": true, - "html_url": "https://github.com/octo-org/octo-repo-ghsa-1234-5678-9012", - "description": null, - "fork": false, - "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012", - "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/comments{/number}", - "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/commits{/sha}", - "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/contributors", - "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/deployments", - "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/downloads", - "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/events", - "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/forks", - "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/tags{/sha}", - "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/hooks", - "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues{/number}", - "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/labels{/name}", - "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/languages", - "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/merges", - "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/pulls{/number}", - "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/releases{/id}", - "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/stargazers", - "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/subscribers", - "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/subscription", - "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/tags", - "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/teams", - "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/trees{/sha}" - } + "private": true, + "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "description": null, + "fork": false, + "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", + "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", + "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", + "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", + "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", + "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", + "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", + "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", + "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", + "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", + "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", + "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", + "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", + "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", + "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", + "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", + "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", + "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", + "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", + "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", + "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" } - ] + } } } } } }, - "400": { - "description": "Bad Request", + "403": { + "description": "Forbidden", "content": { "application/json": { "schema": { @@ -692674,59 +703844,47 @@ } } } - }, - "application/scim+json": { + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { "schema": { - "title": "Scim Error", - "description": "Scim Error", + "title": "Basic Error", + "description": "Basic Error", "type": "object", "properties": { "message": { - "type": [ - "string", - "null" - ] + "type": "string" }, "documentation_url": { - "type": [ - "string", - "null" - ] + "type": "string" }, - "detail": { - "type": [ - "string", - "null" - ] + "url": { + "type": "string" }, "status": { - "type": "integer" - }, - "scimType": { - "type": [ - "string", - "null" - ] - }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } + "type": "string" } } } } } }, - "404": { - "description": "Resource not found", + "422": { + "description": "Validation failed, or the endpoint has been spammed.", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", + "title": "Validation Error", + "description": "Validation Error", "type": "object", + "required": [ + "message", + "documentation_url" + ], "properties": { "message": { "type": "string" @@ -692734,11 +703892,56 @@ "documentation_url": { "type": "string" }, - "url": { - "type": "string" - }, - "status": { - "type": "string" + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } } } } @@ -692752,17 +703955,19 @@ "category": "security-advisories", "subcategory": "repository-advisories" } - }, + } + }, + "/repos/{owner}/{repo}/security-advisories/reports": { "post": { - "summary": "Create a repository security advisory", - "description": "Creates a new repository security advisory.\n\nIn order to create a draft repository security advisory, the authenticated user must be a security manager or administrator of that repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", + "summary": "Privately report a security vulnerability", + "description": "Report a security vulnerability to the maintainers of the repository.\nSee \"[Privately reporting a security vulnerability](https://docs.github.com/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability)\" for more information about private vulnerability reporting.", "tags": [ "security-advisories" ], - "operationId": "security-advisories/create-repository-advisory", + "operationId": "security-advisories/create-private-vulnerability-report", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#create-a-repository-security-advisory" + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#privately-report-a-security-vulnerability" }, "parameters": [ { @@ -692801,16 +704006,12 @@ "description": "A detailed description of what the advisory impacts.", "maxLength": 65535 }, - "cve_id": { + "vulnerabilities": { "type": [ - "string", + "array", "null" ], - "description": "The Common Vulnerabilities and Exposures (CVE) ID." - }, - "vulnerabilities": { - "type": "array", - "description": "A product affected by the vulnerability detailed in a repository security advisory.", + "description": "An array of products affected by the vulnerability detailed in a repository security advisory.", "items": { "type": "object", "properties": { @@ -692890,43 +704091,6 @@ "type": "string" } }, - "credits": { - "type": [ - "array", - "null" - ], - "description": "A list of users receiving credit for their participation in the security advisory.", - "items": { - "type": "object", - "properties": { - "login": { - "type": "string", - "description": "The username of the user credited." - }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] - } - }, - "required": [ - "login", - "type" - ], - "additionalProperties": false - } - }, "severity": { "type": [ "string", @@ -692956,53 +704120,16 @@ }, "required": [ "summary", - "description", - "vulnerabilities" + "description" ], "additionalProperties": false }, "examples": { "default": { "value": { - "summary": "A new important advisory", + "summary": "A newly discovered vulnerability", "description": "A more in-depth description of what the problem is.", "severity": "high", - "cve_id": null, - "vulnerabilities": [ - { - "package": { - "name": "a-package", - "ecosystem": "npm" - }, - "vulnerable_version_range": "< 1.0.0", - "patched_versions": "1.0.0", - "vulnerable_functions": [ - "important_function" - ] - } - ], - "cwe_ids": [ - "CWE-1101", - "CWE-20" - ], - "credits": [ - { - "login": "monalisa", - "type": "reporter" - }, - { - "login": "octocat", - "type": "analyst" - } - ] - } - }, - "withVectorString": { - "value": { - "summary": "A new important advisory", - "description": "A more in-depth description of what the problem is.", - "cvss_vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L", - "cve_id": null, "vulnerabilities": [ { "package": { @@ -693017,31 +704144,7 @@ } ], "cwe_ids": [ - "CWE-1101", - "CWE-20" - ], - "credits": [ - { - "login": "monalisa", - "type": "reporter" - }, - { - "login": "octocat", - "type": "analyst" - } - ] - } - }, - "minimal": { - "value": { - "summary": "A new important advisory", - "description": "A more in-depth description of what the problem is.", - "vulnerabilities": [ - { - "package": { - "ecosystem": "npm" - } - } + "CWE-123" ] } } @@ -695064,9 +706167,9 @@ "cve_id": "CVE-2050-00000", "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", - "summary": "A short summary of the advisory.", - "description": "A detailed description of what the advisory entails.", - "severity": "critical", + "summary": "A newly discovered vulnerability", + "description": "A more in-depth description of what the problem is.", + "severity": "high", "author": { "login": "octocat", "id": 1, @@ -695087,26 +706190,7 @@ "type": "User", "site_admin": false }, - "publisher": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, + "publisher": null, "identifiers": [ { "type": "GHSA", @@ -695114,53 +706198,35 @@ }, { "type": "CVE", - "value": "CVE-2050-00000" + "value": null } ], - "state": "published", + "state": "triage", "created_at": "2020-01-01T00:00:00Z", "updated_at": "2020-01-02T00:00:00Z", - "published_at": "2020-01-03T00:00:00Z", + "published_at": null, "closed_at": null, "withdrawn_at": null, - "submission": null, + "submission": { + "accepted": false + }, "vulnerabilities": [ { "package": { - "ecosystem": "pip", + "ecosystem": "npm", "name": "a-package" }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" - ] - }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", + "vulnerable_version_range": "< 1.0.0", + "patched_versions": "1.0.0", "vulnerable_functions": [ - "function2" + "important_function" ] } ], - "cvss": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 - }, + "cvss": null, "cvss_severities": { - "cvss_v3": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 - }, - "cvss_v4": { - "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", - "score": 9.3 - } + "cvss_v3": null, + "cvss_v4": null }, "cwes": [ { @@ -695174,7 +706240,7 @@ "credits": [ { "login": "octocat", - "type": "analyst" + "type": "finder" } ], "credits_detailed": [ @@ -695199,28 +706265,28 @@ "type": "User", "site_admin": false }, - "type": "analyst", + "type": "finder", "state": "accepted" } ], "collaborating_users": [ { - "login": "octokitten", + "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octokitten_happy.gif", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", "gravatar_id": "", - "url": "https://api.github.com/users/octokitten", - "html_url": "https://github.com/octokitten", - "followers_url": "https://api.github.com/users/octokitten/followers", - "following_url": "https://api.github.com/users/octokitten/following{/other_user}", - "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", - "organizations_url": "https://api.github.com/users/octokitten/orgs", - "repos_url": "https://api.github.com/users/octokitten/repos", - "events_url": "https://api.github.com/users/octokitten/events{/privacy}", - "received_events_url": "https://api.github.com/users/octokitten/received_events", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", "type": "User", "site_admin": false } @@ -695242,73 +706308,7 @@ "parent": null } ], - "private_fork": { - "id": 217723378, - "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", - "name": "octo-repo-ghsa-abcd-1234-efgh", - "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", - "owner": { - "login": "octo-org", - "id": 6811672, - "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", - "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/octo-org", - "html_url": "https://github.com/octo-org", - "followers_url": "https://api.github.com/users/octo-org/followers", - "following_url": "https://api.github.com/users/octo-org/following{/other_user}", - "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", - "organizations_url": "https://api.github.com/users/octo-org/orgs", - "repos_url": "https://api.github.com/users/octo-org/repos", - "events_url": "https://api.github.com/users/octo-org/events{/privacy}", - "received_events_url": "https://api.github.com/users/octo-org/received_events", - "type": "Organization", - "site_admin": false - }, - "private": true, - "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "description": null, - "fork": false, - "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", - "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", - "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", - "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", - "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", - "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", - "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", - "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", - "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", - "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", - "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", - "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", - "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", - "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", - "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", - "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", - "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", - "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", - "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", - "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", - "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" - } + "private_fork": null } } } @@ -695451,17 +706451,17 @@ } } }, - "/repos/{owner}/{repo}/security-advisories/reports": { - "post": { - "summary": "Privately report a security vulnerability", - "description": "Report a security vulnerability to the maintainers of the repository.\nSee \"[Privately reporting a security vulnerability](https://docs.github.com/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability)\" for more information about private vulnerability reporting.", + "/repos/{owner}/{repo}/security-advisories/{ghsa_id}": { + "get": { + "summary": "Get a repository security advisory", + "description": "Get a repository security advisory using its GitHub Security Advisory (GHSA) identifier.\n\nAnyone can access any published security advisory on a public repository.\n\nThe authenticated user can access an unpublished security advisory from a repository if they are a security manager or administrator of that repository, or if they are a\ncollaborator on the security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:read` scope to to get a published security advisory in a private repository, or any unpublished security advisory that the authenticated user has access to.", "tags": [ "security-advisories" ], - "operationId": "security-advisories/create-private-vulnerability-report", + "operationId": "security-advisories/get-repository-advisory", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#privately-report-a-security-vulnerability" + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#get-a-repository-security-advisory" }, "parameters": [ { @@ -695481,173 +706481,19 @@ "schema": { "type": "string" } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "summary": { - "type": "string", - "description": "A short summary of the advisory.", - "maxLength": 1024 - }, - "description": { - "type": "string", - "description": "A detailed description of what the advisory impacts.", - "maxLength": 65535 - }, - "vulnerabilities": { - "type": [ - "array", - "null" - ], - "description": "An array of products affected by the vulnerability detailed in a repository security advisory.", - "items": { - "type": "object", - "properties": { - "package": { - "description": "The name of the package affected by the vulnerability.", - "type": "object", - "properties": { - "ecosystem": { - "type": "string", - "description": "The package's language or package management ecosystem.", - "enum": [ - "rubygems", - "npm", - "pip", - "maven", - "nuget", - "composer", - "go", - "rust", - "erlang", - "actions", - "pub", - "other", - "swift" - ] - }, - "name": { - "type": [ - "string", - "null" - ], - "description": "The unique package name within its ecosystem." - } - }, - "required": [ - "ecosystem" - ] - }, - "vulnerable_version_range": { - "type": [ - "string", - "null" - ], - "description": "The range of the package versions affected by the vulnerability." - }, - "patched_versions": { - "type": [ - "string", - "null" - ], - "description": "The package version(s) that resolve the vulnerability." - }, - "vulnerable_functions": { - "type": [ - "array", - "null" - ], - "description": "The functions in the package that are affected.", - "items": { - "type": "string" - } - } - }, - "required": [ - "package" - ], - "additionalProperties": false - } - }, - "cwe_ids": { - "type": [ - "array", - "null" - ], - "description": "A list of Common Weakness Enumeration (CWE) IDs.", - "items": { - "type": "string" - } - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the advisory. You must choose between setting this field or `cvss_vector_string`.", - "enum": [ - "critical", - "high", - "medium", - "low", - null - ] - }, - "cvss_vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS vector that calculates the severity of the advisory. You must choose between setting this field or `severity`." - }, - "start_private_fork": { - "type": "boolean", - "description": "Whether to create a temporary private fork of the repository to collaborate on a fix.", - "default": false - } - }, - "required": [ - "summary", - "description" - ], - "additionalProperties": false - }, - "examples": { - "default": { - "value": { - "summary": "A newly discovered vulnerability", - "description": "A more in-depth description of what the problem is.", - "severity": "high", - "vulnerabilities": [ - { - "package": { - "name": "a-package", - "ecosystem": "npm" - }, - "vulnerable_version_range": "< 1.0.0", - "patched_versions": "1.0.0", - "vulnerable_functions": [ - "important_function" - ] - } - ], - "cwe_ids": [ - "CWE-123" - ] - } - } - } + }, + { + "name": "ghsa_id", + "description": "The GHSA (GitHub Security Advisory) identifier of the advisory.", + "in": "path", + "required": true, + "schema": { + "type": "string" } } - }, + ], "responses": { - "201": { + "200": { "description": "Response", "content": { "application/json": { @@ -697661,9 +708507,9 @@ "cve_id": "CVE-2050-00000", "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", - "summary": "A newly discovered vulnerability", - "description": "A more in-depth description of what the problem is.", - "severity": "high", + "summary": "A short summary of the advisory.", + "description": "A detailed description of what the advisory entails.", + "severity": "critical", "author": { "login": "octocat", "id": 1, @@ -697684,7 +708530,26 @@ "type": "User", "site_admin": false }, - "publisher": null, + "publisher": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, "identifiers": [ { "type": "GHSA", @@ -697692,35 +708557,53 @@ }, { "type": "CVE", - "value": null + "value": "CVE-2050-00000" } ], - "state": "triage", + "state": "published", "created_at": "2020-01-01T00:00:00Z", "updated_at": "2020-01-02T00:00:00Z", - "published_at": null, + "published_at": "2020-01-03T00:00:00Z", "closed_at": null, "withdrawn_at": null, - "submission": { - "accepted": false - }, + "submission": null, "vulnerabilities": [ { "package": { - "ecosystem": "npm", + "ecosystem": "pip", "name": "a-package" }, - "vulnerable_version_range": "< 1.0.0", - "patched_versions": "1.0.0", + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", "vulnerable_functions": [ - "important_function" + "function1" + ] + }, + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" ] } ], - "cvss": null, + "cvss": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 + }, "cvss_severities": { - "cvss_v3": null, - "cvss_v4": null + "cvss_v3": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 + }, + "cvss_v4": { + "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", + "score": 9.3 + } }, "cwes": [ { @@ -697734,7 +708617,7 @@ "credits": [ { "login": "octocat", - "type": "finder" + "type": "analyst" } ], "credits_detailed": [ @@ -697759,28 +708642,28 @@ "type": "User", "site_admin": false }, - "type": "finder", + "type": "analyst", "state": "accepted" } ], "collaborating_users": [ { - "login": "octocat", + "login": "octokitten", "id": 1, "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "avatar_url": "https://github.com/images/error/octokitten_happy.gif", "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", + "url": "https://api.github.com/users/octokitten", + "html_url": "https://github.com/octokitten", + "followers_url": "https://api.github.com/users/octokitten/followers", + "following_url": "https://api.github.com/users/octokitten/following{/other_user}", + "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", + "organizations_url": "https://api.github.com/users/octokitten/orgs", + "repos_url": "https://api.github.com/users/octokitten/repos", + "events_url": "https://api.github.com/users/octokitten/events{/privacy}", + "received_events_url": "https://api.github.com/users/octokitten/received_events", "type": "User", "site_admin": false } @@ -697802,7 +708685,73 @@ "parent": null } ], - "private_fork": null + "private_fork": { + "id": 217723378, + "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", + "name": "octo-repo-ghsa-abcd-1234-efgh", + "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", + "owner": { + "login": "octo-org", + "id": 6811672, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", + "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octo-org", + "html_url": "https://github.com/octo-org", + "followers_url": "https://api.github.com/users/octo-org/followers", + "following_url": "https://api.github.com/users/octo-org/following{/other_user}", + "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", + "organizations_url": "https://api.github.com/users/octo-org/orgs", + "repos_url": "https://api.github.com/users/octo-org/repos", + "events_url": "https://api.github.com/users/octo-org/events{/privacy}", + "received_events_url": "https://api.github.com/users/octo-org/received_events", + "type": "Organization", + "site_admin": false + }, + "private": true, + "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "description": null, + "fork": false, + "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", + "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", + "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", + "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", + "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", + "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", + "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", + "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", + "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", + "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", + "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", + "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", + "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", + "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", + "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", + "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", + "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", + "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", + "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", + "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", + "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" + } } } } @@ -697860,81 +708809,6 @@ } } } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } } }, "x-github": { @@ -697943,19 +708817,17 @@ "category": "security-advisories", "subcategory": "repository-advisories" } - } - }, - "/repos/{owner}/{repo}/security-advisories/{ghsa_id}": { - "get": { - "summary": "Get a repository security advisory", - "description": "Get a repository security advisory using its GitHub Security Advisory (GHSA) identifier.\n\nAnyone can access any published security advisory on a public repository.\n\nThe authenticated user can access an unpublished security advisory from a repository if they are a security manager or administrator of that repository, or if they are a\ncollaborator on the security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:read` scope to to get a published security advisory in a private repository, or any unpublished security advisory that the authenticated user has access to.", + }, + "patch": { + "summary": "Update a repository security advisory", + "description": "Update a repository security advisory using its GitHub Security Advisory (GHSA) identifier.\n\nIn order to update any security advisory, the authenticated user must be a security manager or administrator of that repository,\nor a collaborator on the repository security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", "tags": [ "security-advisories" ], - "operationId": "security-advisories/get-repository-advisory", + "operationId": "security-advisories/update-repository-advisory", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#get-a-repository-security-advisory" + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#update-a-repository-security-advisory" }, "parameters": [ { @@ -697986,6 +708858,264 @@ } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "summary": { + "type": "string", + "description": "A short summary of the advisory.", + "maxLength": 1024 + }, + "description": { + "type": "string", + "description": "A detailed description of what the advisory impacts.", + "maxLength": 65535 + }, + "cve_id": { + "type": [ + "string", + "null" + ], + "description": "The Common Vulnerabilities and Exposures (CVE) ID." + }, + "vulnerabilities": { + "type": "array", + "description": "A product affected by the vulnerability detailed in a repository security advisory.", + "items": { + "type": "object", + "properties": { + "package": { + "description": "The name of the package affected by the vulnerability.", + "type": "object", + "properties": { + "ecosystem": { + "type": "string", + "description": "The package's language or package management ecosystem.", + "enum": [ + "rubygems", + "npm", + "pip", + "maven", + "nuget", + "composer", + "go", + "rust", + "erlang", + "actions", + "pub", + "other", + "swift" + ] + }, + "name": { + "type": [ + "string", + "null" + ], + "description": "The unique package name within its ecosystem." + } + }, + "required": [ + "ecosystem" + ] + }, + "vulnerable_version_range": { + "type": [ + "string", + "null" + ], + "description": "The range of the package versions affected by the vulnerability." + }, + "patched_versions": { + "type": [ + "string", + "null" + ], + "description": "The package version(s) that resolve the vulnerability." + }, + "vulnerable_functions": { + "type": [ + "array", + "null" + ], + "description": "The functions in the package that are affected.", + "items": { + "type": "string" + } + } + }, + "required": [ + "package" + ], + "additionalProperties": false + } + }, + "cwe_ids": { + "type": [ + "array", + "null" + ], + "description": "A list of Common Weakness Enumeration (CWE) IDs.", + "items": { + "type": "string" + } + }, + "credits": { + "type": [ + "array", + "null" + ], + "description": "A list of users receiving credit for their participation in the security advisory.", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string", + "description": "The username of the user credited." + }, + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + } + }, + "required": [ + "login", + "type" + ], + "additionalProperties": false + } + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the advisory. You must choose between setting this field or `cvss_vector_string`.", + "enum": [ + "critical", + "high", + "medium", + "low", + null + ] + }, + "cvss_vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS vector that calculates the severity of the advisory. You must choose between setting this field or `severity`." + }, + "state": { + "type": "string", + "description": "The state of the advisory.", + "enum": [ + "published", + "closed", + "draft" + ] + }, + "collaborating_users": { + "type": [ + "array", + "null" + ], + "description": "A list of usernames who have been granted write access to the advisory.", + "items": { + "type": "string" + } + }, + "collaborating_teams": { + "type": [ + "array", + "null" + ], + "description": "A list of team slugs which have been granted write access to the advisory.", + "items": { + "type": "string" + } + } + }, + "additionalProperties": false + }, + "examples": { + "default": { + "summary": "Updating the severity and state.", + "value": { + "severity": "critical", + "state": "published" + } + }, + "add_credit": { + "summary": "To add a credit to an advisory, send the whole array of values.", + "value": { + "credits": [ + { + "login": "monauser", + "type": "remediation_developer" + } + ] + } + }, + "update_vvrs": { + "summary": "To add vulnerable versions, include existing versions in the array.", + "value": [ + { + "package": { + "ecosystem": "pip", + "name": "a-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", + "vulnerable_functions": [ + "function1" + ] + }, + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" + ] + } + ] + }, + "invalid_state_transition": { + "summary": "Example of an invalid state transition, from `published` to `draft`.", + "value": { + "state": "draft" + } + }, + "update_severity_with_cvss_set": { + "summary": "Severity cannot be updated when the CVSS is already set.", + "value": { + "severity": "low" + } + } + } + } + } + }, "responses": { "200": { "description": "Response", @@ -699959,43 +711089,296 @@ ] } ], - "type": [ - "null" - ] + "type": [ + "null" + ] + } + }, + "required": [ + "ghsa_id", + "cve_id", + "url", + "html_url", + "summary", + "description", + "severity", + "author", + "publisher", + "identifiers", + "state", + "created_at", + "updated_at", + "published_at", + "closed_at", + "withdrawn_at", + "submission", + "vulnerabilities", + "cvss", + "cwes", + "cwe_ids", + "credits", + "credits_detailed", + "collaborating_users", + "collaborating_teams", + "private_fork" + ], + "additionalProperties": false + }, + "examples": { + "default": { + "value": { + "ghsa_id": "GHSA-abcd-1234-efgh", + "cve_id": "CVE-2050-00000", + "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", + "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", + "summary": "A short summary of the advisory.", + "description": "A detailed description of what the advisory entails.", + "severity": "critical", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "publisher": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "identifiers": [ + { + "type": "GHSA", + "value": "GHSA-abcd-1234-efgh" + }, + { + "type": "CVE", + "value": "CVE-2050-00000" + } + ], + "state": "published", + "created_at": "2020-01-01T00:00:00Z", + "updated_at": "2020-01-02T00:00:00Z", + "published_at": "2020-01-03T00:00:00Z", + "closed_at": null, + "withdrawn_at": null, + "submission": null, + "vulnerabilities": [ + { + "package": { + "ecosystem": "pip", + "name": "a-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", + "vulnerable_functions": [ + "function1" + ] + }, + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" + ] + } + ], + "cvss": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 + }, + "cvss_severities": { + "cvss_v3": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 + }, + "cvss_v4": { + "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", + "score": 9.3 + } + }, + "cwes": [ + { + "cwe_id": "CWE-123", + "name": "A CWE" + } + ], + "cwe_ids": [ + "CWE-123" + ], + "credits": [ + { + "login": "octocat", + "type": "analyst" + } + ], + "credits_detailed": [ + { + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "type": "analyst", + "state": "accepted" + } + ], + "collaborating_users": [ + { + "login": "octokitten", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octokitten_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octokitten", + "html_url": "https://github.com/octokitten", + "followers_url": "https://api.github.com/users/octokitten/followers", + "following_url": "https://api.github.com/users/octokitten/following{/other_user}", + "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", + "organizations_url": "https://api.github.com/users/octokitten/orgs", + "repos_url": "https://api.github.com/users/octokitten/repos", + "events_url": "https://api.github.com/users/octokitten/events{/privacy}", + "received_events_url": "https://api.github.com/users/octokitten/received_events", + "type": "User", + "site_admin": false + } + ], + "collaborating_teams": [ + { + "name": "Justice League", + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "permission": "admin", + "parent": null + } + ], + "private_fork": { + "id": 217723378, + "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", + "name": "octo-repo-ghsa-abcd-1234-efgh", + "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", + "owner": { + "login": "octo-org", + "id": 6811672, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", + "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octo-org", + "html_url": "https://github.com/octo-org", + "followers_url": "https://api.github.com/users/octo-org/followers", + "following_url": "https://api.github.com/users/octo-org/following{/other_user}", + "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", + "organizations_url": "https://api.github.com/users/octo-org/orgs", + "repos_url": "https://api.github.com/users/octo-org/repos", + "events_url": "https://api.github.com/users/octo-org/events{/privacy}", + "received_events_url": "https://api.github.com/users/octo-org/received_events", + "type": "Organization", + "site_admin": false + }, + "private": true, + "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "description": null, + "fork": false, + "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", + "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", + "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", + "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", + "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", + "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", + "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", + "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", + "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", + "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", + "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", + "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", + "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", + "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", + "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", + "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", + "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", + "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", + "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", + "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", + "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" + } } }, - "required": [ - "ghsa_id", - "cve_id", - "url", - "html_url", - "summary", - "description", - "severity", - "author", - "publisher", - "identifiers", - "state", - "created_at", - "updated_at", - "published_at", - "closed_at", - "withdrawn_at", - "submission", - "vulnerabilities", - "cvss", - "cwes", - "cwe_ids", - "credits", - "credits_detailed", - "collaborating_users", - "collaborating_teams", - "private_fork" - ], - "additionalProperties": false - }, - "examples": { - "default": { + "add_credit": { "value": { "ghsa_id": "GHSA-abcd-1234-efgh", "cve_id": "CVE-2050-00000", @@ -700303,6 +711686,93 @@ } } } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + }, + "examples": { + "invalid_state_transition": { + "value": { + "message": "Invalid state transition from `published` to `draft`." + } + }, + "update_severity_with_cvss_set": { + "value": { + "message": "Cannot update severity value when CVSS is set." + } + } + } + } + } } }, "x-github": { @@ -700311,17 +711781,19 @@ "category": "security-advisories", "subcategory": "repository-advisories" } - }, - "patch": { - "summary": "Update a repository security advisory", - "description": "Update a repository security advisory using its GitHub Security Advisory (GHSA) identifier.\n\nIn order to update any security advisory, the authenticated user must be a security manager or administrator of that repository,\nor a collaborator on the repository security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", + } + }, + "/repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve": { + "post": { + "summary": "Request a CVE for a repository security advisory", + "description": "If you want a CVE identification number for the security vulnerability in your project, and don't already have one, you can request a CVE identification number from GitHub. For more information see \"[Requesting a CVE identification number](https://docs.github.com/code-security/security-advisories/repository-security-advisories/publishing-a-repository-security-advisory#requesting-a-cve-identification-number-optional).\"\n\nYou may request a CVE for public repositories, but cannot do so for private repositories.\n\nIn order to request a CVE for a repository security advisory, the authenticated user must be a security manager or administrator of that repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", "tags": [ "security-advisories" ], - "operationId": "security-advisories/update-repository-advisory", + "operationId": "security-advisories/create-repository-advisory-cve-request", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#update-a-repository-security-advisory" + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#request-a-cve-for-a-repository-security-advisory" }, "parameters": [ { @@ -700352,1719 +711824,1077 @@ } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "summary": { - "type": "string", - "description": "A short summary of the advisory.", - "maxLength": 1024 - }, - "description": { - "type": "string", - "description": "A detailed description of what the advisory impacts.", - "maxLength": 65535 - }, - "cve_id": { - "type": [ - "string", - "null" - ], - "description": "The Common Vulnerabilities and Exposures (CVE) ID." - }, - "vulnerabilities": { - "type": "array", - "description": "A product affected by the vulnerability detailed in a repository security advisory.", - "items": { - "type": "object", - "properties": { - "package": { - "description": "The name of the package affected by the vulnerability.", - "type": "object", - "properties": { - "ecosystem": { - "type": "string", - "description": "The package's language or package management ecosystem.", - "enum": [ - "rubygems", - "npm", - "pip", - "maven", - "nuget", - "composer", - "go", - "rust", - "erlang", - "actions", - "pub", - "other", - "swift" - ] - }, - "name": { - "type": [ - "string", - "null" - ], - "description": "The unique package name within its ecosystem." - } - }, - "required": [ - "ecosystem" - ] - }, - "vulnerable_version_range": { - "type": [ - "string", - "null" - ], - "description": "The range of the package versions affected by the vulnerability." - }, - "patched_versions": { - "type": [ - "string", - "null" - ], - "description": "The package version(s) that resolve the vulnerability." - }, - "vulnerable_functions": { - "type": [ - "array", - "null" - ], - "description": "The functions in the package that are affected.", - "items": { - "type": "string" - } - } - }, - "required": [ - "package" - ], - "additionalProperties": false - } - }, - "cwe_ids": { - "type": [ - "array", - "null" - ], - "description": "A list of Common Weakness Enumeration (CWE) IDs.", - "items": { - "type": "string" - } - }, - "credits": { - "type": [ - "array", - "null" - ], - "description": "A list of users receiving credit for their participation in the security advisory.", - "items": { - "type": "object", - "properties": { - "login": { - "type": "string", - "description": "The username of the user credited." - }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] - } - }, - "required": [ - "login", - "type" - ], - "additionalProperties": false - } - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the advisory. You must choose between setting this field or `cvss_vector_string`.", - "enum": [ - "critical", - "high", - "medium", - "low", - null - ] - }, - "cvss_vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS vector that calculates the severity of the advisory. You must choose between setting this field or `severity`." - }, - "state": { - "type": "string", - "description": "The state of the advisory.", - "enum": [ - "published", - "closed", - "draft" - ] - }, - "collaborating_users": { - "type": [ - "array", - "null" - ], - "description": "A list of usernames who have been granted write access to the advisory.", - "items": { - "type": "string" - } - }, - "collaborating_teams": { - "type": [ - "array", - "null" - ], - "description": "A list of team slugs which have been granted write access to the advisory.", - "items": { - "type": "string" - } - } - }, - "additionalProperties": false - }, - "examples": { - "default": { - "summary": "Updating the severity and state.", - "value": { - "severity": "critical", - "state": "published" - } - }, - "add_credit": { - "summary": "To add a credit to an advisory, send the whole array of values.", - "value": { - "credits": [ - { - "login": "monauser", - "type": "remediation_developer" - } - ] - } - }, - "update_vvrs": { - "summary": "To add vulnerable versions, include existing versions in the array.", - "value": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" - ] - }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" - ] - } - ] - }, - "invalid_state_transition": { - "summary": "Example of an invalid state transition, from `published` to `draft`.", - "value": { - "state": "draft" - } + "responses": { + "202": { + "description": "Accepted", + "content": { + "application/json": { + "schema": { + "type": "object" }, - "update_severity_with_cvss_set": { - "summary": "Severity cannot be updated when the CVSS is already set.", - "value": { - "severity": "low" + "examples": { + "default": { + "value": null } } } } - } - }, - "responses": { - "200": { - "description": "Response", + }, + "400": { + "description": "Bad Request", "content": { "application/json": { "schema": { - "description": "A repository security advisory.", + "title": "Basic Error", + "description": "Basic Error", "type": "object", "properties": { - "ghsa_id": { - "type": "string", - "description": "The GitHub Security Advisory ID.", - "readOnly": true + "message": { + "type": "string" }, - "cve_id": { - "type": [ - "string", - "null" - ], - "description": "The Common Vulnerabilities and Exposures (CVE) ID." + "documentation_url": { + "type": "string" }, "url": { - "type": "string", - "format": "uri", - "description": "The API URL for the advisory.", - "readOnly": true - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The URL for the advisory.", - "readOnly": true - }, - "summary": { - "type": "string", - "description": "A short summary of the advisory.", - "maxLength": 1024 + "type": "string" }, - "description": { + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { "type": [ "string", "null" - ], - "description": "A detailed description of what the advisory entails.", - "maxLength": 65535 + ] }, - "severity": { + "documentation_url": { "type": [ "string", "null" - ], - "description": "The severity of the advisory.", - "enum": [ - "critical", - "high", - "medium", - "low", - null ] }, - "author": { - "readOnly": true, - "description": "The author of the advisory.", - "allOf": [ - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ], + "detail": { "type": [ + "string", "null" ] }, - "publisher": { - "readOnly": true, - "description": "The publisher of the advisory.", - "allOf": [ - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ], + "status": { + "type": "integer" + }, + "scimType": { "type": [ + "string", "null" ] }, - "identifiers": { + "schemas": { "type": "array", "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of identifier.", - "enum": [ - "CVE", - "GHSA" - ] - }, - "value": { - "type": "string", - "description": "The identifier value." - } - }, - "required": [ - "type", - "value" - ] - }, - "readOnly": true + "type": "string" + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "state": { - "type": "string", - "description": "The state of the advisory.", - "enum": [ - "published", - "closed", - "withdrawn", - "draft", - "triage" - ] + "documentation_url": { + "type": "string" }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was created, in ISO 8601 format.", - "readOnly": true + "url": { + "type": "string" }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was last updated, in ISO 8601 format.", - "readOnly": true + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was published, in ISO 8601 format.", - "readOnly": true + "documentation_url": { + "type": "string" }, - "closed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was closed, in ISO 8601 format.", - "readOnly": true + "url": { + "type": "string" }, - "withdrawn_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was withdrawn, in ISO 8601 format.", - "readOnly": true + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" }, - "submission": { - "type": [ - "object", - "null" - ], - "readOnly": true, - "properties": { - "accepted": { - "type": "boolean", - "description": "Whether a private vulnerability report was accepted by the repository's administrators.", - "readOnly": true - } - }, - "required": [ - "accepted" - ] + "documentation_url": { + "type": "string" }, - "vulnerabilities": { - "type": [ - "array", - "null" - ], + "errors": { + "type": "array", "items": { - "description": "A product affected by the vulnerability detailed in a repository security advisory.", "type": "object", + "required": [ + "code" + ], "properties": { - "package": { - "description": "The name of the package affected by the vulnerability.", - "type": [ - "object", - "null" - ], - "properties": { - "ecosystem": { - "type": "string", - "description": "The package's language or package management ecosystem.", - "enum": [ - "rubygems", - "npm", - "pip", - "maven", - "nuget", - "composer", - "go", - "rust", - "erlang", - "actions", - "pub", - "other", - "swift" + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" ] }, - "name": { + { "type": [ - "string", + "integer", + "null" + ] + }, + { + "type": [ + "array", "null" ], - "description": "The unique package name within its ecosystem." + "items": { + "type": "string" + } } - }, - "required": [ - "ecosystem", - "name" ] - }, - "vulnerable_version_range": { - "type": [ - "string", - "null" - ], - "description": "The range of the package versions affected by the vulnerability." - }, - "patched_versions": { - "type": [ - "string", - "null" - ], - "description": "The package version(s) that resolve the vulnerability." - }, - "vulnerable_functions": { - "type": [ - "array", - "null" - ], - "description": "The functions in the package that are affected.", - "items": { - "type": "string" - } } - }, - "required": [ - "package", - "vulnerable_version_range", - "patched_versions", - "vulnerable_functions" - ], - "additionalProperties": false + } } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "security-advisories", + "subcategory": "repository-advisories" + } + } + }, + "/repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks": { + "post": { + "summary": "Create a temporary private fork", + "description": "Create a temporary private fork to collaborate on fixing a security vulnerability in your repository.\n\n> [!NOTE]\n> Forking a repository happens asynchronously. You may have to wait up to 5 minutes before you can access the fork.", + "tags": [ + "security-advisories" + ], + "operationId": "security-advisories/create-fork", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#create-a-temporary-private-fork" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ghsa_id", + "description": "The GHSA (GitHub Security Advisory) identifier of the advisory.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "202": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Full Repository", + "description": "Full Repository", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1296269 + ] }, - "cvss": { - "type": [ - "object", - "null" - ], + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "type": "string", + "examples": [ + "Hello-World" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", "properties": { - "vector_string": { + "name": { "type": [ "string", "null" - ], - "description": "The CVSS vector." + ] }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS score.", - "minimum": 0, - "maximum": 10, - "readOnly": true - } - }, - "required": [ - "vector_string", - "score" - ] - }, - "cvss_severities": { - "type": [ - "object", - "null" - ], - "properties": { - "cvss_v3": { + "email": { "type": [ - "object", + "string", "null" - ], - "properties": { - "vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS 3 vector string." - }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS 3 score.", - "minimum": 0, - "maximum": 10, - "readOnly": true - } - }, - "required": [ - "vector_string", - "score" ] }, - "cvss_v4": { + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { "type": [ - "object", + "string", "null" ], - "properties": { - "vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS 4 vector string." - }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS 4 score.", - "minimum": 0, - "maximum": 10, - "readOnly": true - } - }, - "required": [ - "vector_string", - "score" + "examples": [ + "41d064eb2195891e12d0413f63227ea7" ] - } - } - }, - "cwes": { - "type": [ - "array", - "null" - ], - "items": { - "type": "object", - "properties": { - "cwe_id": { - "type": "string", - "description": "The Common Weakness Enumeration (CWE) identifier." - }, - "name": { - "type": "string", - "description": "The name of the CWE.", - "readOnly": true - } }, - "required": [ - "cwe_id", - "name" - ] + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - "readOnly": true + "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" + ] }, - "cwe_ids": { - "type": [ - "array", - "null" - ], - "description": "A list of only the CWE IDs.", - "items": { - "type": "string" - } + "private": { + "type": "boolean" }, - "credits": { - "type": [ - "array", - "null" - ], - "items": { - "type": "object", - "properties": { - "login": { - "type": "string", - "description": "The username of the user credited." - }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] - } - } - } + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] }, - "credits_detailed": { + "description": { "type": [ - "array", + "string", "null" ], - "items": { - "description": "A credit given to a user for a repository security advisory.", - "type": "object", - "properties": { - "user": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] - }, - "state": { - "type": "string", - "description": "The state of the user's acceptance of the credit.", - "enum": [ - "accepted", - "declined", - "pending" - ] - } - }, - "required": [ - "user", - "type", - "state" - ], - "additionalProperties": false - }, - "readOnly": true + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] }, - "collaborating_users": { + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { "type": [ - "array", + "string", "null" ], - "description": "A list of users that collaborate on the advisory.", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] }, - "collaborating_teams": { + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { "type": [ - "array", + "string", "null" ], - "description": "A list of teams that collaborate on the advisory.", + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", "items": { - "title": "Team", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "slug": { - "type": "string" - }, - "description": { - "type": [ - "string", - "null" - ] - }, - "privacy": { - "type": "string" - }, - "notification_setting": { - "type": "string" - }, - "permission": { - "type": "string" - }, - "permissions": { - "type": "object", - "properties": { - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - }, - "admin": { - "type": "boolean" - } - }, - "required": [ - "pull", - "triage", - "push", - "maintain", - "admin" - ] - }, - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "members_url": { - "type": "string" - }, - "repositories_url": { - "type": "string", - "format": "uri" - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "access_source": { - "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", - "type": "string", - "enum": [ - "direct", - "organization", - "enterprise" - ], - "examples": [ - "direct" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - }, - "parent": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Team Simple", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the team", - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VGVhbTE=" - ] - }, - "url": { - "description": "URL for the team", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1" - ] - }, - "members_url": { - "type": "string", - "examples": [ - "https://api.github.com/organizations/1/team/1/members{/member}" - ] - }, - "name": { - "description": "Name of the team", - "type": "string", - "examples": [ - "Justice League" - ] - }, - "description": { - "description": "Description of the team", - "type": [ - "string", - "null" - ], - "examples": [ - "A great team." - ] - }, - "permission": { - "description": "Permission that the team will have for its repositories", - "type": "string", - "examples": [ - "admin" - ] - }, - "privacy": { - "description": "The level of privacy this team should have", - "type": "string", - "examples": [ - "closed" - ] - }, - "notification_setting": { - "description": "The notification setting the team has set", - "type": "string", - "examples": [ - "notifications_enabled" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "repositories_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1/repos" - ] - }, - "slug": { - "type": "string", - "examples": [ - "justice-league" - ] - }, - "ldap_dn": { - "description": "Distinguished Name (DN) that team maps to within LDAP environment", - "type": "string", - "examples": [ - "uid=example,ou=users,dc=github,dc=com" - ] - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "type" - ] - } - ] - } + "type": "string" + }, + "examples": [ + "octocat", + "atom", + "electron", + "API" + ] + }, + "has_issues": { + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "type": "boolean", + "examples": [ + true + ] + }, + "has_discussions": { + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "type": "string", + "examples": [ + "public" + ] + }, + "pushed_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "parent", - "type" - ] - } + "maintain": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] }, - "private_fork": { - "readOnly": true, - "description": "A temporary private fork of the advisory's repository for collaborating on a fix.", - "allOf": [ + "allow_rebase_merge": { + "type": "boolean", + "examples": [ + true + ] + }, + "template_repository": { + "anyOf": [ { - "title": "Simple Repository", - "description": "A GitHub repository.", + "type": "null" + }, + { + "title": "Repository", + "description": "A repository on GitHub.", "type": "object", "properties": { "id": { + "description": "Unique identifier of the repository", "type": "integer", "format": "int64", - "description": "A unique identifier of the repository.", "examples": [ - 1296269 + 42 ] }, "node_id": { "type": "string", - "description": "The GraphQL identifier of the repository.", "examples": [ "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" ] }, "name": { - "type": "string", "description": "The name of the repository.", + "type": "string", "examples": [ - "Hello-World" + "Team Environment" ] }, "full_name": { "type": "string", - "description": "The full, globally unique, name of the repository.", "examples": [ "octocat/Hello-World" ] }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, "owner": { "title": "Simple User", "description": "A GitHub user.", @@ -702234,13 +713064,13 @@ ] }, "private": { - "type": "boolean", - "description": "Whether the repository is private." + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" }, "html_url": { "type": "string", "format": "uri", - "description": "The URL to view the repository on GitHub.com.", "examples": [ "https://github.com/octocat/Hello-World" ] @@ -702250,287 +713080,589 @@ "string", "null" ], - "description": "The repository description.", "examples": [ "This your first repo!" ] }, "fork": { - "type": "boolean", - "description": "Whether the repository is a fork." + "type": "boolean" }, "url": { "type": "string", "format": "uri", - "description": "The URL to get more information about the repository from the GitHub API.", "examples": [ "https://api.github.com/repos/octocat/Hello-World" ] }, "archive_url": { "type": "string", - "description": "A template for the API URL to download the repository as an archive.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" ] }, "assignees_url": { "type": "string", - "description": "A template for the API URL to list the available assignees for issues in the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/assignees{/user}" + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" ] }, "blobs_url": { "type": "string", - "description": "A template for the API URL to create or retrieve a raw Git blob in the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" ] }, "branches_url": { "type": "string", - "description": "A template for the API URL to get information about branches in the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/branches{/branch}" + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" ] }, "collaborators_url": { "type": "string", - "description": "A template for the API URL to get information about collaborators of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" ] }, "comments_url": { "type": "string", - "description": "A template for the API URL to get information about comments on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/comments{/number}" + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" ] }, "commits_url": { "type": "string", - "description": "A template for the API URL to get information about commits on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/commits{/sha}" + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" ] }, "compare_url": { "type": "string", - "description": "A template for the API URL to compare two commits or refs.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" ] }, "contents_url": { "type": "string", - "description": "A template for the API URL to get the contents of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contents/{+path}" + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" ] }, "contributors_url": { "type": "string", "format": "uri", - "description": "A template for the API URL to list the contributors to the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contributors" + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" ] }, - "deployments_url": { + "svn_url": { "type": "string", "format": "uri", - "description": "The API URL to list the deployments of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/deployments" + "https://svn.github.com/octocat/Hello-World" ] }, - "downloads_url": { - "type": "string", + "homepage": { + "type": [ + "string", + "null" + ], "format": "uri", - "description": "The API URL to list the downloads on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/downloads" + "https://github.com" ] }, - "events_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the events of the repository.", + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/events" + 9 ] }, - "forks_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the forks of the repository.", + "stargazers_count": { + "type": "integer", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/forks" + 80 ] }, - "git_commits_url": { - "type": "string", - "description": "A template for the API URL to get information about Git commits of the repository.", + "watchers_count": { + "type": "integer", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + 80 ] }, - "git_refs_url": { - "type": "string", - "description": "A template for the API URL to get information about Git refs of the repository.", + "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", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + 108 ] }, - "git_tags_url": { + "default_branch": { + "description": "The default branch of the repository.", "type": "string", - "description": "A template for the API URL to get information about Git tags of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + "master" ] }, - "issue_comment_url": { - "type": "string", - "description": "A template for the API URL to get information about issue comments on the repository.", + "open_issues_count": { + "type": "integer", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + 0 ] }, - "issue_events_url": { - "type": "string", - "description": "A template for the API URL to get information about issue events on the repository.", + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + true ] }, - "issues_url": { - "type": "string", - "description": "A template for the API URL to get information about issues on the repository.", + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues{/number}" + true ] }, - "keys_url": { - "type": "string", - "description": "A template for the API URL to get information about deploy keys on the repository.", + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + true ] }, - "labels_url": { - "type": "string", - "description": "A template for the API URL to get information about labels of the repository.", + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/labels{/name}" + true ] }, - "languages_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get information about the languages of the repository.", + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, "examples": [ - "https://api.github.com/repos/octocat/Hello-World/languages" + true ] }, - "merges_url": { - "type": "string", - "format": "uri", - "description": "The API URL to merge branches in the repository.", + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/merges" + true ] }, - "milestones_url": { - "type": "string", - "description": "A template for the API URL to get information about milestones of the repository.", + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones{/number}" + true ] }, - "notifications_url": { + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", "type": "string", - "description": "A template for the API URL to get information about notifications on the repository.", + "enum": [ + "all", + "collaborators_only" + ], "examples": [ - "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + "all" ] }, - "pulls_url": { - "type": "string", - "description": "A template for the API URL to get information about pull requests on the repository.", + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls{/number}" + "2011-01-26T19:06:43Z" ] }, - "releases_url": { - "type": "string", - "description": "A template for the API URL to get information about releases on the repository.", + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/releases{/id}" + "2011-01-26T19:01:12Z" ] }, - "stargazers_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the stargazers on the repository.", + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/stargazers" + "2011-01-26T19:14:43Z" ] }, - "statuses_url": { - "type": "string", - "description": "A template for the API URL to get information about statuses of a commit.", + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + true ] }, - "subscribers_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the subscribers on the repository.", + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/subscribers" + true ] }, - "subscription_url": { - "type": "string", - "format": "uri", - "description": "The API URL to subscribe to notifications for this repository.", + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/subscription" + false ] }, - "tags_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get information about tags on the repository.", + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/tags" + false ] }, - "teams_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the teams on the repository.", + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/teams" + false ] }, - "trees_url": { + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { "type": "string", - "description": "A template for the API URL to create or retrieve a raw Git tree of the repository.", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + true ] }, - "hooks_url": { + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { "type": "string", - "format": "uri", - "description": "The API URL to list the hooks on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/hooks" + "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } } }, "required": [ @@ -702579,5769 +713711,5506 @@ "tags_url", "teams_url", "trees_url", - "url" - ] - } - ], - "type": [ - "null" - ] - } - }, - "required": [ - "ghsa_id", - "cve_id", - "url", - "html_url", - "summary", - "description", - "severity", - "author", - "publisher", - "identifiers", - "state", - "created_at", - "updated_at", - "published_at", - "closed_at", - "withdrawn_at", - "submission", - "vulnerabilities", - "cvss", - "cwes", - "cwe_ids", - "credits", - "credits_detailed", - "collaborating_users", - "collaborating_teams", - "private_fork" - ], - "additionalProperties": false - }, - "examples": { - "default": { - "value": { - "ghsa_id": "GHSA-abcd-1234-efgh", - "cve_id": "CVE-2050-00000", - "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", - "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", - "summary": "A short summary of the advisory.", - "description": "A detailed description of what the advisory entails.", - "severity": "critical", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "publisher": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "identifiers": [ - { - "type": "GHSA", - "value": "GHSA-abcd-1234-efgh" - }, - { - "type": "CVE", - "value": "CVE-2050-00000" - } - ], - "state": "published", - "created_at": "2020-01-01T00:00:00Z", - "updated_at": "2020-01-02T00:00:00Z", - "published_at": "2020-01-03T00:00:00Z", - "closed_at": null, - "withdrawn_at": null, - "submission": null, - "vulnerabilities": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" - ] - }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" - ] - } - ], - "cvss": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 - }, - "cvss_severities": { - "cvss_v3": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 - }, - "cvss_v4": { - "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", - "score": 9.3 - } - }, - "cwes": [ - { - "cwe_id": "CWE-123", - "name": "A CWE" - } - ], - "cwe_ids": [ - "CWE-123" - ], - "credits": [ - { - "login": "octocat", - "type": "analyst" - } - ], - "credits_detailed": [ - { - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "type": "analyst", - "state": "accepted" - } - ], - "collaborating_users": [ - { - "login": "octokitten", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octokitten_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octokitten", - "html_url": "https://github.com/octokitten", - "followers_url": "https://api.github.com/users/octokitten/followers", - "following_url": "https://api.github.com/users/octokitten/following{/other_user}", - "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", - "organizations_url": "https://api.github.com/users/octokitten/orgs", - "repos_url": "https://api.github.com/users/octokitten/repos", - "events_url": "https://api.github.com/users/octokitten/events{/privacy}", - "received_events_url": "https://api.github.com/users/octokitten/received_events", - "type": "User", - "site_admin": false - } - ], - "collaborating_teams": [ - { - "name": "Justice League", - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "permission": "admin", - "parent": null - } - ], - "private_fork": { - "id": 217723378, - "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", - "name": "octo-repo-ghsa-abcd-1234-efgh", - "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", - "owner": { - "login": "octo-org", - "id": 6811672, - "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", - "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/octo-org", - "html_url": "https://github.com/octo-org", - "followers_url": "https://api.github.com/users/octo-org/followers", - "following_url": "https://api.github.com/users/octo-org/following{/other_user}", - "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", - "organizations_url": "https://api.github.com/users/octo-org/orgs", - "repos_url": "https://api.github.com/users/octo-org/repos", - "events_url": "https://api.github.com/users/octo-org/events{/privacy}", - "received_events_url": "https://api.github.com/users/octo-org/received_events", - "type": "Organization", - "site_admin": false - }, - "private": true, - "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "description": null, - "fork": false, - "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", - "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", - "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", - "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", - "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", - "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", - "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", - "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", - "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", - "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", - "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", - "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", - "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", - "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", - "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", - "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", - "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", - "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", - "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", - "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", - "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" - } - } - }, - "add_credit": { - "value": { - "ghsa_id": "GHSA-abcd-1234-efgh", - "cve_id": "CVE-2050-00000", - "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", - "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", - "summary": "A short summary of the advisory.", - "description": "A detailed description of what the advisory entails.", - "severity": "critical", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "publisher": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "identifiers": [ - { - "type": "GHSA", - "value": "GHSA-abcd-1234-efgh" - }, - { - "type": "CVE", - "value": "CVE-2050-00000" - } - ], - "state": "published", - "created_at": "2020-01-01T00:00:00Z", - "updated_at": "2020-01-02T00:00:00Z", - "published_at": "2020-01-03T00:00:00Z", - "closed_at": null, - "withdrawn_at": null, - "submission": null, - "vulnerabilities": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" - ] - }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" - ] - } - ], - "cvss": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 - }, - "cvss_severities": { - "cvss_v3": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 - }, - "cvss_v4": { - "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", - "score": 9.3 - } - }, - "cwes": [ - { - "cwe_id": "CWE-123", - "name": "A CWE" - } - ], - "cwe_ids": [ - "CWE-123" - ], - "credits": [ - { - "login": "octocat", - "type": "analyst" - } - ], - "credits_detailed": [ - { - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "type": "analyst", - "state": "accepted" - } - ], - "collaborating_users": [ - { - "login": "octokitten", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octokitten_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octokitten", - "html_url": "https://github.com/octokitten", - "followers_url": "https://api.github.com/users/octokitten/followers", - "following_url": "https://api.github.com/users/octokitten/following{/other_user}", - "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", - "organizations_url": "https://api.github.com/users/octokitten/orgs", - "repos_url": "https://api.github.com/users/octokitten/repos", - "events_url": "https://api.github.com/users/octokitten/events{/privacy}", - "received_events_url": "https://api.github.com/users/octokitten/received_events", - "type": "User", - "site_admin": false - } - ], - "collaborating_teams": [ - { - "name": "Justice League", - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "permission": "admin", - "parent": null - } - ], - "private_fork": { - "id": 217723378, - "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", - "name": "octo-repo-ghsa-abcd-1234-efgh", - "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", - "owner": { - "login": "octo-org", - "id": 6811672, - "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", - "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/octo-org", - "html_url": "https://github.com/octo-org", - "followers_url": "https://api.github.com/users/octo-org/followers", - "following_url": "https://api.github.com/users/octo-org/following{/other_user}", - "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", - "organizations_url": "https://api.github.com/users/octo-org/orgs", - "repos_url": "https://api.github.com/users/octo-org/repos", - "events_url": "https://api.github.com/users/octo-org/events{/privacy}", - "received_events_url": "https://api.github.com/users/octo-org/received_events", - "type": "Organization", - "site_admin": false - }, - "private": true, - "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "description": null, - "fork": false, - "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", - "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", - "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", - "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", - "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", - "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", - "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", - "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", - "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", - "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", - "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", - "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", - "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", - "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", - "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", - "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", - "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", - "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", - "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", - "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", - "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } + "url", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] } - } - } - } - }, - "examples": { - "invalid_state_transition": { - "value": { - "message": "Invalid state transition from `published` to `draft`." - } - }, - "update_severity_with_cvss_set": { - "value": { - "message": "Cannot update severity value when CVSS is set." - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "security-advisories", - "subcategory": "repository-advisories" - } - } - }, - "/repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve": { - "post": { - "summary": "Request a CVE for a repository security advisory", - "description": "If you want a CVE identification number for the security vulnerability in your project, and don't already have one, you can request a CVE identification number from GitHub. For more information see \"[Requesting a CVE identification number](https://docs.github.com/code-security/security-advisories/repository-security-advisories/publishing-a-repository-security-advisory#requesting-a-cve-identification-number-optional).\"\n\nYou may request a CVE for public repositories, but cannot do so for private repositories.\n\nIn order to request a CVE for a repository security advisory, the authenticated user must be a security manager or administrator of that repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", - "tags": [ - "security-advisories" - ], - "operationId": "security-advisories/create-repository-advisory-cve-request", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#request-a-cve-for-a-repository-security-advisory" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ghsa_id", - "description": "The GHSA (GitHub Security Advisory) identifier of the advisory.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "202": { - "description": "Accepted", - "content": { - "application/json": { - "schema": { - "type": "object" - }, - "examples": { - "default": { - "value": null - } - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" + ] }, - "status": { - "type": "string" - } - } - } - }, - "application/scim+json": { - "schema": { - "title": "Scim Error", - "description": "Scim Error", - "type": "object", - "properties": { - "message": { + "temp_clone_token": { "type": [ "string", "null" ] }, - "documentation_url": { - "type": [ - "string", - "null" + "allow_squash_merge": { + "type": "boolean", + "examples": [ + true ] }, - "detail": { - "type": [ - "string", - "null" + "allow_auto_merge": { + "type": "boolean", + "examples": [ + false ] }, - "status": { - "type": "integer" + "delete_branch_on_merge": { + "type": "boolean", + "examples": [ + false + ] }, - "scimType": { - "type": [ - "string", - "null" + "allow_merge_commit": { + "type": "boolean", + "examples": [ + true ] }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" + "allow_update_branch": { + "type": "boolean", + "examples": [ + true + ] }, - "documentation_url": { - "type": "string" + "use_squash_pr_title_as_default": { + "type": "boolean", + "examples": [ + false + ] }, - "url": { - "type": "string" + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit).", + "examples": [ + "PR_TITLE" + ] }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message.", + "examples": [ + "PR_BODY" + ] }, - "documentation_url": { - "type": "string" + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n - `PR_TITLE` - default to the pull request's title.\n - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).", + "examples": [ + "PR_TITLE" + ] }, - "url": { - "type": "string" + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message.", + "examples": [ + "PR_BODY" + ] }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" + "allow_forking": { + "type": "boolean", + "examples": [ + true + ] }, - "documentation_url": { - "type": "string" + "web_commit_signoff_required": { + "type": "boolean", + "examples": [ + false + ] }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "security-advisories", - "subcategory": "repository-advisories" - } - } - }, - "/repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks": { - "post": { - "summary": "Create a temporary private fork", - "description": "Create a temporary private fork to collaborate on fixing a security vulnerability in your repository.\n\n> [!NOTE]\n> Forking a repository happens asynchronously. You may have to wait up to 5 minutes before you can access the fork.", - "tags": [ - "security-advisories" - ], - "operationId": "security-advisories/create-fork", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#create-a-temporary-private-fork" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ghsa_id", - "description": "The GHSA (GitHub Security Advisory) identifier of the advisory.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "202": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Full Repository", - "description": "Full Repository", - "type": "object", - "properties": { - "id": { + "subscribers_count": { "type": "integer", - "format": "int64", "examples": [ - 1296269 + 42 ] }, - "node_id": { - "type": "string", + "network_count": { + "type": "integer", "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + 0 ] }, - "name": { - "type": "string", - "examples": [ - "Hello-World" + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } ] }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" + "organization": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } ] }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", + "parent": { + "title": "Repository", + "description": "A repository on GitHub.", "type": "object", "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { "type": [ "string", "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" ] }, - "email": { - "type": [ - "string", - "null" + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" ] }, - "login": { + "contributors_url": { "type": "string", + "format": "uri", "examples": [ - "octocat" + "http://api.github.com/repos/octocat/Hello-World/contributors" ] }, - "id": { - "type": "integer", - "format": "int64", + "deployments_url": { + "type": "string", + "format": "uri", "examples": [ - 1 + "http://api.github.com/repos/octocat/Hello-World/deployments" ] }, - "node_id": { + "downloads_url": { "type": "string", + "format": "uri", "examples": [ - "MDQ6VXNlcjE=" + "http://api.github.com/repos/octocat/Hello-World/downloads" ] }, - "avatar_url": { + "events_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "http://api.github.com/repos/octocat/Hello-World/events" ] }, - "gravatar_id": { - "type": [ - "string", - "null" - ], + "forks_url": { + "type": "string", + "format": "uri", "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "http://api.github.com/repos/octocat/Hello-World/forks" ] }, - "url": { + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat" + "http://api.github.com/repos/octocat/Hello-World/languages" ] }, - "html_url": { + "merges_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat" + "http://api.github.com/repos/octocat/Hello-World/merges" ] }, - "followers_url": { + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/followers" + "http://api.github.com/repos/octocat/Hello-World/stargazers" ] }, - "following_url": { + "statuses_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" ] }, - "gists_url": { + "subscribers_url": { "type": "string", + "format": "uri", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "http://api.github.com/repos/octocat/Hello-World/subscribers" ] }, - "starred_url": { + "subscription_url": { "type": "string", + "format": "uri", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "http://api.github.com/repos/octocat/Hello-World/subscription" ] }, - "subscriptions_url": { + "tags_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "http://api.github.com/repos/octocat/Hello-World/tags" ] }, - "organizations_url": { + "teams_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/orgs" + "http://api.github.com/repos/octocat/Hello-World/teams" ] }, - "repos_url": { + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], "format": "uri", "examples": [ - "https://api.github.com/users/octocat/repos" + "git:git.example.com/octocat/Hello-World" ] }, - "events_url": { + "hooks_url": { "type": "string", + "format": "uri", "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "http://api.github.com/repos/octocat/Hello-World/hooks" ] }, - "received_events_url": { + "svn_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/received_events" + "https://svn.github.com/octocat/Hello-World" ] }, - "type": { + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", "type": "string", "examples": [ - "User" + "master" ] }, - "site_admin": { + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { "type": "boolean" }, - "starred_at": { + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", "type": "string", + "enum": [ + "all", + "collaborators_only" + ], "examples": [ - "\"2020-07-09T00:17:55Z\"" + "all" ] }, - "user_view_type": { + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { "type": "string", "examples": [ - "public" + "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } } }, "required": [ - "avatar_url", + "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", - "followers_url", - "following_url", - "gists_url", - "gravatar_id", + "fork", + "forks_url", + "full_name", + "git_commits_url", + "git_refs_url", + "git_tags_url", + "hooks_url", "html_url", "id", "node_id", - "login", - "organizations_url", - "received_events_url", - "repos_url", - "site_admin", - "starred_url", - "subscriptions_url", - "type", - "url" - ] - }, - "private": { - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" - ] - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "clone_url": { - "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" - ] - }, - "hooks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" - ] - }, - "svn_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "type": "boolean", - "examples": [ - true - ] - }, - "topics": { - "type": "array", - "items": { - "type": "string" - }, - "examples": [ - "octocat", - "atom", - "electron", - "API" - ] - }, - "has_issues": { - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_downloads": { - "type": "boolean", - "examples": [ - true - ] - }, - "has_discussions": { - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "type": "boolean", - "examples": [ - true - ] - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", - "type": "string", - "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "type": "string", - "examples": [ - "public" - ] - }, - "pushed_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" ] }, - "permissions": { + "source": { + "title": "Repository", + "description": "A repository on GitHub.", "type": "object", "properties": { - "admin": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] }, - "push": { - "type": "boolean" + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] }, - "triage": { - "type": "boolean" + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] }, - "pull": { - "type": "boolean" - } - }, - "required": [ - "admin", - "pull", - "push" - ] - }, - "allow_rebase_merge": { - "type": "boolean", - "examples": [ - true - ] - }, - "template_repository": { - "anyOf": [ - { - "type": "null" + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] }, - { - "title": "Repository", - "description": "A repository on GitHub.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "description": "The name of the repository.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "forks": { - "type": "integer" - }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } - }, - "required": [ - "admin", - "pull", - "push" - ] + "license": { + "anyOf": [ + { + "type": "null" }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", + { + "title": "License Simple", + "description": "License Simple", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { + "key": { "type": "string", "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 + "mit" ] }, - "node_id": { + "name": { "type": "string", "examples": [ - "MDQ6VXNlcjE=" + "MIT License" ] }, - "avatar_url": { - "type": "string", + "url": { + "type": [ + "string", + "null" + ], "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "https://api.github.com/licenses/mit" ] }, - "gravatar_id": { + "spdx_id": { "type": [ "string", "null" ], "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "MIT" ] }, - "url": { + "node_id": { "type": "string", - "format": "uri", "examples": [ - "https://api.github.com/users/octocat" + "MDc6TGljZW5zZW1pdA==" ] }, "html_url": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "format": "uri" } }, "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" + "key", + "name", + "url", + "spdx_id", + "node_id" ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, + "pull": { "type": "boolean" }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] + "triage": { + "type": "boolean" }, - "description": { + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { "type": [ "string", "null" - ], - "examples": [ - "This your first repo!" ] }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + "email": { + "type": [ + "string", + "null" ] }, - "commits_url": { + "login": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + "octocat" ] }, - "compare_url": { - "type": "string", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + 1 ] }, - "contents_url": { + "node_id": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + "MDQ6VXNlcjE=" ] }, - "contributors_url": { + "avatar_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" + "https://github.com/images/error/octocat_happy.gif" ] }, - "deployments_url": { - "type": "string", - "format": "uri", + "gravatar_id": { + "type": [ + "string", + "null" + ], "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" + "41d064eb2195891e12d0413f63227ea7" ] }, - "downloads_url": { + "url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" + "https://api.github.com/users/octocat" ] }, - "events_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" + "https://github.com/octocat" ] }, - "forks_url": { + "followers_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" - ] - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + "https://api.github.com/users/octocat/followers" ] }, - "issues_url": { + "following_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "keys_url": { + "gists_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "labels_url": { + "starred_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "languages_url": { + "subscriptions_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" + "https://api.github.com/users/octocat/subscriptions" ] }, - "merges_url": { + "organizations_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" + "https://api.github.com/users/octocat/orgs" ] }, - "stargazers_url": { + "repos_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + "https://api.github.com/users/octocat/repos" ] }, - "subscribers_url": { + "events_url": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "subscription_url": { + "received_events_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" + "https://api.github.com/users/octocat/received_events" ] }, - "tags_url": { + "type": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" + "User" ] }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] + "site_admin": { + "type": "boolean" }, - "trees_url": { + "starred_at": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + "\"2020-07-09T00:17:55Z\"" ] }, - "clone_url": { + "user_view_type": { "type": "string", "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" + "public" ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" }, - "hooks_url": { + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "forks": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "anonymous_access_enabled": { + "description": "Whether anonymous git access is allowed.", + "default": true, + "type": "boolean" + }, + "code_of_conduct": { + "title": "Code Of Conduct Simple", + "description": "Code of Conduct Simple", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/github/docs/community/code_of_conduct" + ] + }, + "key": { + "type": "string", + "examples": [ + "citizen_code_of_conduct" + ] + }, + "name": { + "type": "string", + "examples": [ + "Citizen Code of Conduct" + ] + }, + "html_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com/github/docs/blob/main/CODE_OF_CONDUCT.md" + ] + } + }, + "required": [ + "url", + "key", + "name", + "html_url" + ] + }, + "security_and_analysis": { + "type": [ + "object", + "null" + ], + "properties": { + "advanced_security": { + "description": "Enable or disable GitHub Advanced Security for the repository.\n\nFor standalone Code Scanning or Secret Protection products, this parameter cannot be used.\n", + "type": "object", + "properties": { + "status": { "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" + "enum": [ + "enabled", + "disabled" ] - }, - "svn_url": { + } + } + }, + "code_security": { + "type": "object", + "properties": { + "status": { "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 + "enum": [ + "enabled", + "disabled" ] - }, - "default_branch": { - "description": "The default branch of the repository.", + } + } + }, + "dependabot_security_updates": { + "description": "Enable or disable Dependabot security updates for the repository.", + "type": "object", + "properties": { + "status": { + "description": "The enablement status of Dependabot security updates for the repository.", "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "topics": { - "type": "array", - "items": { - "type": "string" - } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_downloads": { - "description": "Whether downloads are enabled.", - "default": true, - "type": "boolean", - "deprecated": true, - "examples": [ - true - ] - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true + "enum": [ + "enabled", + "disabled" ] - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", + } + } + }, + "secret_scanning": { + "type": "object", + "properties": { + "status": { "type": "string", "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false + "enabled", + "disabled" ] - }, - "use_squash_pr_title_as_default": { - "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", - "default": false, - "deprecated": true - }, - "squash_merge_commit_title": { + } + } + }, + "secret_scanning_push_protection": { + "type": "object", + "properties": { + "status": { "type": "string", "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_non_provider_patterns": { + "type": "object", + "properties": { + "status": { "type": "string", "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_ai_detection": { + "type": "object", + "properties": { + "status": { "type": "string", "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_delegated_alert_dismissal": { + "type": "object", + "properties": { + "status": { "type": "string", "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true + "enabled", + "disabled" ] - }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "master_branch": { - "type": "string" - }, - "starred_at": { + } + } + }, + "secret_scanning_delegated_bypass": { + "type": "object", + "properties": { + "status": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:42Z\"" + "enum": [ + "enabled", + "disabled" ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { - "type": "string" + } + } + }, + "secret_scanning_delegated_bypass_options": { + "type": "object", + "properties": { + "reviewers": { + "type": "array", + "description": "The bypass reviewers for secret scanning delegated bypass", + "items": { + "type": "object", + "required": [ + "reviewer_id", + "reviewer_type" + ], + "properties": { + "reviewer_id": { + "type": "integer", + "description": "The ID of the team or role selected as a bypass reviewer" + }, + "reviewer_type": { + "type": "string", + "description": "The type of the bypass reviewer", + "enum": [ + "TEAM", + "ROLE" + ] + }, + "mode": { + "type": "string", + "description": "The bypass mode for the reviewer", + "enum": [ + "ALWAYS", + "EXEMPT" + ], + "default": "ALWAYS" + } } } } - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] + } } - ] + } + }, + "custom_properties": { + "type": "object", + "description": "The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values.", + "additionalProperties": true + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "has_discussions", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at", + "network_count", + "subscribers_count" + ] + }, + "examples": { + "default": { + "value": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://github.com/licenses/mit" + }, + "language": null, + "forks_count": 9, + "forks": 9, + "stargazers_count": 80, + "watchers_count": 80, + "watchers": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "open_issues": 0, + "is_template": false, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "pull": true, + "push": false, + "admin": false + }, + "allow_rebase_merge": true, + "template_repository": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World-Template", + "full_name": "octocat/Hello-World-Template", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World-Template", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World-Template", + "archive_url": "https://api.github.com/repos/octocat/Hello-World-Template/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World-Template/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World-Template/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World-Template/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World-Template/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World-Template/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World-Template/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World-Template/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World-Template/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World-Template/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World-Template/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World-Template/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World-Template.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World-Template/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World-Template/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World-Template/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World-Template/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World-Template/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World-Template/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World-Template/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World-Template/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World-Template.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World-Template/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World-Template/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World-Template/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World-Template.git", + "mirror_url": "git:git.example.com/octocat/Hello-World-Template", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World-Template/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World-Template", + "homepage": "https://github.com", + "language": null, + "forks": 9, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "watchers": 80, + "size": 108, + "default_branch": "master", + "open_issues": 0, + "open_issues_count": 0, + "is_template": true, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://api.github.com/licenses/mit" + }, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0 + }, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "allow_forking": true, + "web_commit_signoff_required": false, + "subscribers_count": 42, + "network_count": 0, + "organization": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "Organization", + "site_admin": false + }, + "parent": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://api.github.com/licenses/mit" + }, + "forks": 1, + "open_issues": 1, + "watchers": 1 + }, + "source": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://api.github.com/licenses/mit" + }, + "forks": 1, + "open_issues": 1, + "watchers": 1 + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "temp_clone_token": { + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { "type": [ "string", "null" ] }, - "allow_squash_merge": { - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "type": "boolean", - "examples": [ - false - ] - }, - "allow_merge_commit": { - "type": "boolean", - "examples": [ - true + "documentation_url": { + "type": [ + "string", + "null" ] }, - "allow_update_branch": { - "type": "boolean", - "examples": [ - true + "detail": { + "type": [ + "string", + "null" ] }, - "use_squash_pr_title_as_default": { - "type": "boolean", - "examples": [ - false - ] + "status": { + "type": "integer" }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit).", - "examples": [ - "PR_TITLE" + "scimType": { + "type": [ + "string", + "null" ] }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message.", - "examples": [ - "PR_BODY" - ] + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n - `PR_TITLE` - default to the pull request's title.\n - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).", - "examples": [ - "PR_TITLE" - ] + "documentation_url": { + "type": "string" }, - "merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message.", - "examples": [ - "PR_BODY" - ] + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "allow_forking": { - "type": "boolean", - "examples": [ - true - ] + "documentation_url": { + "type": "string" }, - "web_commit_signoff_required": { - "type": "boolean", - "examples": [ - false - ] + "url": { + "type": "string" }, - "subscribers_count": { - "type": "integer", - "examples": [ - 42 - ] + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "network_count": { - "type": "integer", - "examples": [ - 0 - ] + "documentation_url": { + "type": "string" }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] + "url": { + "type": "string" }, - "organization": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "security-advisories", + "subcategory": "repository-advisories" + } + } + }, + "/repos/{owner}/{repo}/stacks": { + "get": { + "summary": "List pull request stacks", + "description": "Lists pull request stacks in a repository.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/list", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_request", + "description": "Filter to the stack containing this repository pull request number.", + "in": "query", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Pull Request Stack Minimal", + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } } - ] - }, - "parent": { - "title": "Repository", - "description": "A repository on GitHub.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "description": "The name of the repository.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "forks": { - "type": "integer" - }, - "permissions": { + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } - }, "required": [ - "admin", - "pull", - "push" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", + "number", + "state", + "draft", + "merged_at", + "head" + ], "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + "number": { + "type": "integer" }, - "node_id": { + "state": { "type": "string", - "examples": [ - "MDQ6VXNlcjE=" + "enum": [ + "open", + "closed" ] }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] + "draft": { + "type": "boolean" }, - "gravatar_id": { + "merged_at": { "type": [ "string", "null" ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "format": "date-time" }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "head": { + "type": "object", + "required": [ + "ref", + "sha" + ], + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "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" - ] - }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" - ] - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "clone_url": { - "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" - ] - }, - "hooks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" - ] - }, - "svn_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "description": "The default branch of the repository.", - "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] + } + } + } + } + } + }, + "examples": { + "default": { + "value": [ + { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] + "pull_requests": [ + { + "number": 101, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11" + } + }, + { + "number": 102, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22" + } + } + ], + "open": true, + "created_at": "2026-04-15T10:00:00Z" + } + ] + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + }, + "post": { + "summary": "Create a pull request stack", + "description": "Creates a stack from an ordered list of pull request numbers. Provide the pull\nrequest numbers from the bottom of the stack to the top. Each pull request's\nbase ref must match the previous pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/create", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers forming the stack from bottom to top.", + "items": { + "type": "integer" + }, + "minItems": 2, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 101, + 102, + 103 + ] + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "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", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + } + }, + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + } + } + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } }, - "topics": { - "type": "array", - "items": { + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't form a\nvalid stack.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] + } + } + ] } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_downloads": { - "description": "Whether downloads are enabled.", - "default": true, - "type": "boolean", - "deprecated": true, - "examples": [ - true - ] - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", - "type": "string", - "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "use_squash_pr_title_as_default": { - "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", - "default": false, - "deprecated": true - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true + } + } + } + } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 ] - }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "master_branch": { + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't form a linear stack", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}": { + "get": { + "summary": "Get a pull request stack", + "description": "Gets a pull request stack by providing its stack number.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/get", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { "type": "string" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:42Z\"" - ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "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", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + } }, - "lexical_commit_sha": { - "type": "string" + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } } } - } + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] - }, - "source": { - "title": "Repository", - "description": "A repository on GitHub.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "description": "The name of the repository.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "forks": { - "type": "integer" - }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" }, - "required": [ - "admin", - "pull", - "push" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" } }, - "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" - ] - }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" - ] - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "clone_url": { - "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" - ] - }, - "hooks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" - ] - }, - "svn_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "description": "The default branch of the repository.", - "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "topics": { - "type": "array", - "items": { - "type": "string" + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } } }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_downloads": { - "description": "Whether downloads are enabled.", - "default": true, - "type": "boolean", - "deprecated": true, - "examples": [ - true - ] - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", - "type": "string", - "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "use_squash_pr_title_as_default": { - "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", - "default": false, - "deprecated": true - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "master_branch": { - "type": "string" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:42Z\"" - ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { - "type": "string" + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" } } } - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "forks": { - "type": "integer" + "documentation_url": { + "type": "string" }, - "master_branch": { + "url": { "type": "string" }, - "open_issues": { + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/add": { + "post": { + "summary": "Add pull requests to a pull request stack", + "description": "Appends an ordered list of pull request numbers onto the top of an existing\nstack. Provide only the pull requests you want to add, from the current top of\nthe stack upward. The first new pull request's base ref must match the current\ntop pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/add", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers to append to the stack, from the current top upward.", + "items": { "type": "integer" }, - "watchers": { + "minItems": 1, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 104, + 102 + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { "type": "integer" }, - "anonymous_access_enabled": { - "description": "Whether anonymous git access is allowed.", - "default": true, - "type": "boolean" + "number": { + "type": "integer" }, - "code_of_conduct": { - "title": "Code Of Conduct Simple", - "description": "Code of Conduct Simple", + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/github/docs/community/code_of_conduct" - ] - }, - "key": { - "type": "string", - "examples": [ - "citizen_code_of_conduct" - ] - }, - "name": { - "type": "string", - "examples": [ - "Citizen Code of Conduct" - ] - }, - "html_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com/github/docs/blob/main/CODE_OF_CONDUCT.md" - ] - } - }, "required": [ - "url", - "key", - "name", - "html_url" - ] - }, - "security_and_analysis": { - "type": [ - "object", - "null" + "ref" ], "properties": { - "advanced_security": { - "description": "Enable or disable GitHub Advanced Security for the repository.\n\nFor standalone Code Scanning or Secret Protection products, this parameter cannot be used.\n", - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "code_security": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "dependabot_security_updates": { - "description": "Enable or disable Dependabot security updates for the repository.", - "type": "object", - "properties": { - "status": { - "description": "The enablement status of Dependabot security updates for the repository.", - "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" - ] - } - } - }, - "secret_scanning_non_provider_patterns": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "secret_scanning_ai_detection": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "secret_scanning_delegated_alert_dismissal": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "secret_scanning_delegated_bypass": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "secret_scanning_delegated_bypass_options": { - "type": "object", - "properties": { - "reviewers": { - "type": "array", - "description": "The bypass reviewers for secret scanning delegated bypass", - "items": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { "type": "object", - "required": [ - "reviewer_id", - "reviewer_type" - ], "properties": { - "reviewer_id": { - "type": "integer", - "description": "The ID of the team or role selected as a bypass reviewer" + "ref": { + "type": "string" }, - "reviewer_type": { - "type": "string", - "description": "The type of the bypass reviewer", - "enum": [ - "TEAM", - "ROLE" + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + }, + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string" }, - "mode": { - "type": "string", - "description": "The bypass mode for the reviewer", - "enum": [ - "ALWAYS", - "EXEMPT" - ], - "default": "ALWAYS" + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] } - } + }, + "required": [ + "ref", + "sha", + "repo" + ] } - } - } - } - } - }, - "custom_properties": { - "type": "object", - "description": "The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values.", - "additionalProperties": true - } - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "has_discussions", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at", - "network_count", - "subscribers_count" - ] - }, - "examples": { - "default": { - "value": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://github.com/licenses/mit" - }, - "language": null, - "forks_count": 9, - "forks": 9, - "stargazers_count": 80, - "watchers_count": 80, - "watchers": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "open_issues": 0, - "is_template": false, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "pull": true, - "push": false, - "admin": false - }, - "allow_rebase_merge": true, - "template_repository": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World-Template", - "full_name": "octocat/Hello-World-Template", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World-Template", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World-Template", - "archive_url": "https://api.github.com/repos/octocat/Hello-World-Template/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World-Template/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World-Template/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World-Template/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World-Template/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World-Template/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World-Template/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World-Template/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World-Template/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World-Template/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World-Template/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World-Template/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World-Template.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World-Template/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World-Template/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World-Template/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World-Template/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World-Template/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World-Template/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World-Template/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World-Template/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World-Template.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World-Template/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World-Template/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World-Template/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World-Template.git", - "mirror_url": "git:git.example.com/octocat/Hello-World-Template", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World-Template/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World-Template", - "homepage": "https://github.com", - "language": null, - "forks": 9, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "watchers": 80, - "size": 108, - "default_branch": "master", - "open_issues": 0, - "open_issues_count": 0, - "is_template": true, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://api.github.com/licenses/mit" - }, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0 - }, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "allow_forking": true, - "web_commit_signoff_required": false, - "subscribers_count": 42, - "network_count": 0, - "organization": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "Organization", - "site_admin": false - }, - "parent": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://api.github.com/licenses/mit" - }, - "forks": 1, - "open_issues": 1, - "watchers": 1 + }, + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + } + } + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" }, - "source": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://api.github.com/licenses/mit" + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } }, - "forks": 1, - "open_issues": 1, - "watchers": 1 - } + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] } } } } } }, - "400": { - "description": "Bad Request", + "404": { + "description": "Resource not found", "content": { "application/json": { "schema": { @@ -708363,45 +719232,39 @@ } } } - }, - "application/scim+json": { + } + } + }, + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", + "content": { + "application/json": { "schema": { - "title": "Scim Error", - "description": "Scim Error", + "title": "Basic Error", + "description": "Basic Error", "type": "object", "properties": { "message": { - "type": [ - "string", - "null" - ] + "type": "string" }, "documentation_url": { - "type": [ - "string", - "null" - ] + "type": "string" }, - "detail": { - "type": [ - "string", - "null" - ] + "url": { + "type": "string" }, "status": { - "type": "integer" - }, - "scimType": { - "type": [ - "string", - "null" - ] - }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } + "type": "string" + } + } + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "status": "409" } } } @@ -708409,7 +719272,7 @@ } }, "422": { - "description": "Validation failed, or the endpoint has been spammed.", + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't be appended\nto the stack.", "content": { "application/json": { "schema": { @@ -708470,7 +719333,14 @@ "null" ], "items": { - "type": "string" + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] } } ] @@ -708479,12 +719349,537 @@ } } } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 + ] + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't continue the stack linearly", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + } } } } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": { + "post": { + "summary": "Remove pull requests from a pull request stack", + "description": "Removes the unmerged pull requests from a stack. Pull requests that cannot be\nunstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated\nstack is returned with a `200`. When no pull requests remain, the stack is\ndissolved and a `204` is returned.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/unstack", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } }, - "403": { - "description": "Forbidden", + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "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", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + } + }, + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + } + } + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", "content": { "application/json": { "schema": { @@ -708509,8 +719904,8 @@ } } }, - "404": { - "description": "Resource not found", + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", "content": { "application/json": { "schema": { @@ -708531,16 +719926,113 @@ "type": "string" } } + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack", + "status": "409" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the stack can't be unstacked because every\npull request in it is locked and cannot be removed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + }, + "examples": { + "cannot_be_removed": { + "summary": "Every pull request in the stack is locked and can't be removed", + "value": { + "message": "Pull requests in this stack cannot be removed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + } + } } } } + }, + "204": { + "description": "A header with no content is returned." } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "security-advisories", - "subcategory": "repository-advisories" + "category": "pulls", + "subcategory": "stacks" } } }, diff --git a/descriptions-next/api.github.com/dereferenced/api.github.com.2022-11-28.deref.yaml b/descriptions-next/api.github.com/dereferenced/api.github.com.2022-11-28.deref.yaml index bcbbbdc77f..921ad32321 100644 --- a/descriptions-next/api.github.com/dereferenced/api.github.com.2022-11-28.deref.yaml +++ b/descriptions-next/api.github.com/dereferenced/api.github.com.2022-11-28.deref.yaml @@ -14749,7 +14749,7 @@ paths: properties: action: type: string - discussion: &782 + discussion: &783 title: Discussion description: A Discussion in a repository. type: object @@ -15535,7 +15535,7 @@ paths: - hooray - eyes - rocket - sub_issues_summary: &700 + sub_issues_summary: &701 title: Sub-issues Summary type: object properties: @@ -15665,7 +15665,7 @@ paths: - url - created_at - updated_at - issue_dependencies_summary: &701 + issue_dependencies_summary: &702 title: Issue Dependencies Summary type: object properties: @@ -17186,7 +17186,7 @@ paths: url: type: string format: uri - user: &709 + user: &710 title: Public User description: Public User type: object @@ -23214,7 +23214,7 @@ paths: parameters: - *75 - *117 - - &760 + - &761 name: month description: If specified, only return results for a single month. The value of `month` is an integer between `1` and `12`. If no year is specified the @@ -23326,7 +23326,7 @@ paths: - *117 - *118 - *119 - - &761 + - &762 name: repository description: The repository name to query for usage in the format owner/repository. in: query @@ -23334,7 +23334,7 @@ paths: schema: type: string - *122 - - &762 + - &763 name: sku description: The SKU to query for usage. in: query @@ -31388,12 +31388,12 @@ paths: required: - subject_digests examples: - default: &741 + default: &742 value: subject_digests: - sha256:abc123 - sha512:def456 - withPredicateType: &742 + withPredicateType: &743 value: subject_digests: - sha256:abc123 @@ -31452,7 +31452,7 @@ paths: description: The cursor to the previous page. description: Information about the current page. examples: - default: &743 + default: &744 value: attestations_subject_digests: - sha256:abc: @@ -32900,18 +32900,18 @@ paths: description: |- The Git reference, formatted as `refs/pull//merge`, `refs/pull//head`, `refs/heads/` or simply ``. - analysis_key: &446 + analysis_key: &447 type: string description: Identifies the configuration under which the analysis was executed. For example, in GitHub Actions this includes the workflow filename and job name. - environment: &447 + environment: &448 type: string description: Identifies the variable values associated with the environment in which the analysis that generated this alert instance was performed, such as the language that was analyzed. - category: &448 + category: &449 type: string description: Identifies the configuration under which the analysis was executed. Used to distinguish between multiple @@ -32931,7 +32931,7 @@ paths: with placeholder links for related locations replaced by links to the relevant code. Only populated when related locations are available for the alert instance. - location: &449 + location: &450 type: object description: Describe a region within a file for the alert. properties: @@ -32952,7 +32952,7 @@ paths: description: |- Classifications that have been applied to the file that triggered the alert. For example identifying it as documentation, or a generated file. - items: &450 + items: &451 type: - string - 'null' @@ -34287,7 +34287,7 @@ paths: machine: anyOf: - type: 'null' - - &462 + - &463 type: object title: Codespace machine description: A description of the machine powering a codespace. @@ -35239,7 +35239,7 @@ paths: - updated_at - visibility examples: - default: &463 + default: &464 value: total_count: 2 secrets: @@ -35277,7 +35277,7 @@ paths: description: Response content: application/json: - schema: &464 + schema: &465 title: CodespacesPublicKey description: The public key used for setting Codespaces secrets. type: object @@ -35312,7 +35312,7 @@ paths: - key_id - key examples: - default: &465 + default: &466 value: key_id: '012345678912345678' key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 @@ -35344,7 +35344,7 @@ paths: application/json: schema: *196 examples: - default: &467 + default: &468 value: name: GH_TOKEN created_at: '2019-08-10T14:59:22Z' @@ -42383,7 +42383,7 @@ paths: application/json: schema: *251 examples: - default: &461 + default: &462 value: id: 1 name: monalisa-octocat-hello-world-g4wpq6h95q @@ -43645,7 +43645,7 @@ paths: parameters: - *75 - *258 - - &724 + - &725 name: repo_name description: repo_name parameter in: path @@ -44706,7 +44706,7 @@ paths: - nuget - container - *75 - - &725 + - &726 name: visibility description: |- The selected visibility of the packages. This parameter is optional and only filters an existing result set. @@ -44747,7 +44747,7 @@ paths: default: *264 '403': *27 '401': *23 - '400': &727 + '400': &728 description: The value of `per_page` multiplied by `page` cannot be greater than 10000. x-github: @@ -46878,7 +46878,7 @@ paths: latest_status_update: anyOf: - type: 'null' - - &810 + - &811 title: Projects v2 Status Update description: An status update belonging to a project type: object @@ -47152,7 +47152,7 @@ paths: content: oneOf: - *83 - - &476 + - &437 title: Pull Request Simple description: Pull Request Simple type: object @@ -47816,7 +47816,7 @@ paths: - updated_at - project_url examples: - default: &747 + default: &748 value: - id: 12345 node_id: PVTF_lADOABCD1234567890 @@ -47993,7 +47993,7 @@ paths: description: The options available for single select fields. At least one option must be provided when creating a single select field. - items: &748 + items: &749 type: object properties: name: @@ -48030,7 +48030,7 @@ paths: description: The field's data type. enum: - iteration - iteration_configuration: &749 + iteration_configuration: &750 type: object description: The configuration for iteration fields. properties: @@ -48080,7 +48080,7 @@ paths: value: name: Due date data_type: date - single_select_field: &750 + single_select_field: &751 summary: Create a single select field value: name: Priority @@ -48107,7 +48107,7 @@ paths: description: raw: High priority items html: High priority items - iteration_field: &751 + iteration_field: &752 summary: Create an iteration field value: name: Sprint @@ -48133,7 +48133,7 @@ paths: application/json: schema: *284 examples: - text_field: &752 + text_field: &753 value: id: 24680 node_id: PVTF_lADOABCD2468024680 @@ -48142,7 +48142,7 @@ paths: project_url: https://api.github.com/projects/67890 created_at: '2022-05-15T08:00:00Z' updated_at: '2022-05-15T08:00:00Z' - number_field: &753 + number_field: &754 value: id: 13579 node_id: PVTF_lADOABCD1357913579 @@ -48151,7 +48151,7 @@ paths: project_url: https://api.github.com/projects/67890 created_at: '2022-06-01T14:30:00Z' updated_at: '2022-06-01T14:30:00Z' - date_field: &754 + date_field: &755 value: id: 98765 node_id: PVTF_lADOABCD9876598765 @@ -48160,7 +48160,7 @@ paths: project_url: https://api.github.com/projects/67890 created_at: '2022-06-10T09:15:00Z' updated_at: '2022-06-10T09:15:00Z' - single_select_field: &755 + single_select_field: &756 value: id: 12345 node_id: PVTF_lADOABCD1234567890 @@ -48194,7 +48194,7 @@ paths: raw: High priority items created_at: '2022-04-28T12:00:00Z' updated_at: '2022-04-28T12:00:00Z' - iteration_field: &756 + iteration_field: &757 value: id: 11223 node_id: PVTF_lADOABCD1122311223 @@ -48240,7 +48240,7 @@ paths: url: https://docs.github.com/rest/projects/fields#get-project-field-for-organization parameters: - *281 - - &757 + - &758 name: field_id description: The unique identifier of the field. in: path @@ -48255,7 +48255,7 @@ paths: application/json: schema: *284 examples: - default: &758 + default: &759 value: id: 12345 node_id: PVTF_lADOABCD1234567890 @@ -49466,7 +49466,7 @@ paths: description: Response for creating a view in an organization-owned project. content: application/json: - schema: &738 + schema: &739 title: Projects v2 View description: A view inside a projects v2 project type: object @@ -49649,7 +49649,7 @@ paths: parameters: - *281 - *75 - - &759 + - &760 name: view_number description: The number that identifies the project view. in: path @@ -57657,7 +57657,7 @@ paths: application/json: schema: type: array - items: &703 + items: &704 title: Team Member description: A user that is a member of a team, including their role on the team and whether the membership is inherited from @@ -57800,7 +57800,7 @@ paths: - type - url examples: - default: &704 + default: &705 value: - login: octocat id: 1 @@ -57887,7 +57887,7 @@ paths: - state - url examples: - response-if-user-is-a-team-maintainer: &705 + response-if-user-is-a-team-maintainer: &706 summary: Response if user is a team maintainer value: url: https://api.github.com/teams/1/memberships/octocat @@ -57952,7 +57952,7 @@ paths: application/json: schema: *339 examples: - response-if-users-membership-with-team-is-now-pending: &706 + response-if-users-membership-with-team-is-now-pending: &707 summary: Response if user's membership with team is now pending value: url: https://api.github.com/teams/1/memberships/octocat @@ -58066,7 +58066,7 @@ paths: description: Alternative response with repository permissions content: application/json: - schema: &707 + schema: &708 title: Team Repository description: A team's access to a repository. type: object @@ -58795,7 +58795,7 @@ paths: type: array items: *201 examples: - response-if-child-teams-exist: &708 + response-if-child-teams-exist: &709 value: - id: 2 node_id: MDQ6VGVhbTI= @@ -67578,7 +67578,7 @@ paths: properties: name: type: string - commit: &472 + commit: &473 title: Commit description: Commit type: object @@ -70901,7 +70901,7 @@ paths: check. type: array items: *86 - deployment: &771 + deployment: &772 title: Deployment description: A deployment created as the result of an Actions check run from a workflow that references an environment @@ -73213,7 +73213,7 @@ paths: - *427 - *19 - *17 - - &444 + - &445 name: ref description: The Git reference for the results you want to list. The `ref` for a branch can be formatted either as `refs/heads/` or simply @@ -73221,7 +73221,7 @@ paths: in: query required: false schema: *428 - - &445 + - &446 name: pr description: The number of the pull request for the results you want to list. in: query @@ -73411,7 +73411,7 @@ paths: classifications: [] instances_url: https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/3/instances '304': *36 - '403': &437 + '403': &438 description: Response if GitHub Advanced Security is not enabled for this repository content: @@ -73440,7 +73440,7 @@ paths: parameters: - *340 - *341 - - &438 + - &439 name: alert_number in: path description: The number that identifies an alert. You can find this at the @@ -73454,7 +73454,7 @@ paths: description: Response content: application/json: - schema: &439 + schema: &440 type: object properties: number: *181 @@ -73542,6 +73542,10 @@ paths: assignees: type: array items: *4 + linked_pull_requests: + description: Pull requests linked to this alert. + type: array + items: *437 required: - number - created_at @@ -73630,7 +73634,7 @@ paths: - test instances_url: https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances '304': *36 - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -73652,7 +73656,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 requestBody: required: true content: @@ -73696,7 +73700,7 @@ paths: description: Response content: application/json: - schema: *439 + schema: *440 examples: default: value: @@ -73772,7 +73776,7 @@ paths: - test instances_url: https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances '400': *14 - '403': &443 + '403': &444 description: Response if the repository is archived or if GitHub Advanced Security is not enabled for this repository content: @@ -73801,13 +73805,13 @@ paths: parameters: - *340 - *341 - - *438 + - *439 responses: '200': description: Response content: application/json: - schema: &440 + schema: &441 type: object properties: status: @@ -73834,13 +73838,13 @@ paths: - description - started_at examples: - default: &441 + default: &442 value: status: success description: This fixes an XSS vulnerability by escaping the user input. started_at: '2024-02-14T12:29:18Z' - '400': &442 + '400': &443 description: Bad Request content: application/json: @@ -73851,7 +73855,7 @@ paths: message: The alert_number is not valid documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#get-the-status-of-an-autofix-for-a-code-scanning-alert status: '400' - '403': *437 + '403': *438 '404': *6 '500': *54 x-github: @@ -73878,27 +73882,27 @@ paths: parameters: - *340 - *341 - - *438 + - *439 responses: '200': description: OK content: application/json: - schema: *440 + schema: *441 examples: - default: *441 + default: *442 '202': description: Accepted content: application/json: - schema: *440 + schema: *441 examples: default: value: status: pending description: started_at: '2024-02-14T12:29:18Z' - '400': *442 + '400': *443 '403': description: Response if the repository is archived, if GitHub Advanced Security is not enabled for this repository or if rate limit is exceeded @@ -73932,7 +73936,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 requestBody: required: false content: @@ -73978,8 +73982,8 @@ paths: value: target_ref: refs/heads/main sha: 178f4f6090b3fccad4a65b3e83d076a622d59652 - '400': *442 - '403': *443 + '400': *443 + '403': *444 '404': *6 '422': description: Unprocessable Entity @@ -74005,11 +74009,11 @@ paths: parameters: - *340 - *341 - - *438 + - *439 - *19 - *17 - - *444 - *445 + - *446 responses: '200': description: Response @@ -74021,9 +74025,9 @@ paths: type: object properties: ref: *428 - analysis_key: *446 - environment: *447 - category: *448 + analysis_key: *447 + environment: *448 + category: *449 state: type: - string @@ -74040,7 +74044,7 @@ paths: properties: text: type: string - location: *449 + location: *450 html_url: type: string classifications: @@ -74048,7 +74052,7 @@ paths: description: |- Classifications that have been applied to the file that triggered the alert. For example identifying it as documentation, or a generated file. - items: *450 + items: *451 examples: default: value: @@ -74085,7 +74089,7 @@ paths: end_column: 50 classifications: - source - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -74125,7 +74129,7 @@ paths: - *427 - *19 - *17 - - *445 + - *446 - name: ref in: query description: The Git reference for the analyses you want to list. The `ref` @@ -74137,7 +74141,7 @@ paths: in: query description: Filter analyses belonging to the same SARIF upload. required: false - schema: &451 + schema: &452 type: string description: An identifier for the upload. examples: @@ -74159,23 +74163,23 @@ paths: application/json: schema: type: array - items: &452 + items: &453 type: object properties: ref: *428 - commit_sha: &460 + commit_sha: &461 description: The SHA of the commit to which the analysis you are uploading relates. type: string minLength: 40 maxLength: 64 pattern: "^([0-9a-fA-F]{40}(?:[0-9a-fA-F]{24})?)$" - analysis_key: *446 + analysis_key: *447 environment: type: string description: Identifies the variable values associated with the environment in which this analysis was performed. - category: *448 + category: *449 error: type: string examples: @@ -74200,7 +74204,7 @@ paths: description: The REST API URL of the analysis resource. format: uri readOnly: true - sarif_id: *451 + sarif_id: *452 tool: *435 deletable: type: boolean @@ -74263,7 +74267,7 @@ paths: version: 1.2.0 deletable: true warning: '' - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -74313,7 +74317,7 @@ paths: description: Response content: application/json: - schema: *452 + schema: *453 examples: response: summary: application/json response @@ -74367,7 +74371,7 @@ paths: properties: - github/alertNumber: 2 - github/alertUrl: https://api.github.com/repos/monalisa/monalisa/code-scanning/alerts/2 - '403': *437 + '403': *438 '404': *6 '422': description: Response if analysis could not be processed @@ -74511,7 +74515,7 @@ paths: next_analysis_url: https://api.github.com/repos/octocat/hello-world/code-scanning/analyses/41 confirm_delete_url: https://api.github.com/repos/octocat/hello-world/code-scanning/analyses/41?confirm_delete '400': *14 - '403': *443 + '403': *444 '404': *6 '503': *115 x-github: @@ -74542,7 +74546,7 @@ paths: application/json: schema: type: array - items: &453 + items: &454 title: CodeQL Database description: A CodeQL database. type: object @@ -74654,7 +74658,7 @@ paths: updated_at: '2022-09-12T12:14:32Z' url: https://api.github.com/repos/octocat/Hello-World/code-scanning/codeql/databases/ruby commit_oid: 1927de39fefa25a9d0e64e3f540ff824a72f538c - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -74696,7 +74700,7 @@ paths: description: Response content: application/json: - schema: *453 + schema: *454 examples: default: value: @@ -74730,7 +74734,7 @@ paths: commit_oid: 1927de39fefa25a9d0e64e3f540ff824a72f538c '302': &487 description: Found - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -74763,7 +74767,7 @@ paths: responses: '204': description: Response - '403': *443 + '403': *444 '404': *6 '503': *115 x-github: @@ -74801,7 +74805,7 @@ paths: type: object additionalProperties: false properties: - language: &454 + language: &455 type: string description: The language targeted by the CodeQL query enum: @@ -74881,7 +74885,7 @@ paths: description: Variant analysis submitted for processing content: application/json: - schema: &458 + schema: &459 title: Variant Analysis description: A run of a CodeQL query against one or more repositories. type: object @@ -74891,7 +74895,7 @@ paths: description: The ID of the variant analysis. controller_repo: *66 actor: *4 - query_language: *454 + query_language: *455 query_pack_url: type: string description: The download url for the query pack. @@ -74939,7 +74943,7 @@ paths: items: type: object properties: - repository: &455 + repository: &456 title: Repository Identifier description: Repository Identifier type: object @@ -74981,7 +74985,7 @@ paths: - private - stargazers_count - updated_at - analysis_status: &459 + analysis_status: &460 type: string description: The new status of the CodeQL variant analysis repository task. @@ -75013,7 +75017,7 @@ paths: from processing. This information is only available to the user that initiated the variant analysis. properties: - access_mismatch_repos: &456 + access_mismatch_repos: &457 type: object properties: repository_count: @@ -75028,7 +75032,7 @@ paths: This list may not include all repositories that were skipped. This is only available when the repository was found and the user has access to it. - items: *455 + items: *456 required: - repository_count - repositories @@ -75051,8 +75055,8 @@ paths: required: - repository_count - repository_full_names - no_codeql_db_repos: *456 - over_limit_repos: *456 + no_codeql_db_repos: *457 + over_limit_repos: *457 required: - access_mismatch_repos - not_found_repos @@ -75068,7 +75072,7 @@ paths: examples: repositories_parameter: summary: Response for a successful variant analysis submission - value: &457 + value: &458 summary: Default response value: id: 1 @@ -75214,10 +75218,10 @@ paths: private: false repository_owners: summary: Response for a successful variant analysis submission - value: *457 + value: *458 repository_lists: summary: Response for a successful variant analysis submission - value: *457 + value: *458 '404': *6 '422': description: Unable to process variant analysis submission @@ -75258,9 +75262,9 @@ paths: description: Response content: application/json: - schema: *458 + schema: *459 examples: - default: *457 + default: *458 '404': *6 '503': *115 x-github: @@ -75318,7 +75322,7 @@ paths: type: object properties: repository: *66 - analysis_status: *459 + analysis_status: *460 artifact_size_in_bytes: type: integer description: The size of the artifact. This is only available @@ -75537,7 +75541,7 @@ paths: threat_model: remote updated_at: '2023-01-19T11:21:34Z' schedule: weekly - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -75653,7 +75657,7 @@ paths: value: run_id: 42 run_url: https://api.github.com/repos/octoorg/octocat/actions/runs/42 - '403': *443 + '403': *444 '404': *6 '409': description: Response if there is already a validation run in progress with @@ -75733,7 +75737,7 @@ paths: schema: type: object properties: - commit_sha: *460 + commit_sha: *461 ref: type: string description: |- @@ -75793,7 +75797,7 @@ paths: schema: type: object properties: - id: *451 + id: *452 url: type: string description: The REST API URL for checking the status of the upload. @@ -75807,7 +75811,7 @@ paths: url: https://api.github.com/repos/octocat/hello-world/code-scanning/sarifs/47177e22-5596-11eb-80a1-c1e54ef945c6 '400': description: Bad Request if the sarif field is invalid - '403': *443 + '403': *444 '404': *6 '413': description: Payload Too Large if the sarif field is too large @@ -75879,7 +75883,7 @@ paths: value: processing_status: complete analyses_url: https://api.github.com/repos/octocat/hello-world/code-scanning/analyses?sarif_id=47177e22-5596-11eb-80a1-c1e54ef945c6 - '403': *437 + '403': *438 '404': description: Not Found if the sarif id does not match any upload '503': *115 @@ -76497,7 +76501,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '202': description: Response when the codespace creation partially failed but is being retried in the background @@ -76505,7 +76509,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '400': *14 '401': *23 '403': *27 @@ -76637,9 +76641,9 @@ paths: type: integer machines: type: array - items: *462 + items: *463 examples: - default: &714 + default: &715 value: total_count: 2 machines: @@ -76856,7 +76860,7 @@ paths: type: integer secrets: type: array - items: &466 + items: &467 title: Codespaces Secret description: Set repository secrets for GitHub Codespaces. type: object @@ -76877,7 +76881,7 @@ paths: - created_at - updated_at examples: - default: *463 + default: *464 headers: Link: *67 x-github: @@ -76907,9 +76911,9 @@ paths: description: Response content: application/json: - schema: *464 + schema: *465 examples: - default: *465 + default: *466 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -76937,9 +76941,9 @@ paths: description: Response content: application/json: - schema: *466 + schema: *467 examples: - default: *467 + default: *468 x-github: githubCloudOnly: false enabledForGitHubApps: true @@ -77082,7 +77086,7 @@ paths: application/json: schema: type: array - items: &468 + items: &469 title: Collaborator description: Collaborator type: object @@ -77634,7 +77638,7 @@ paths: user: anyOf: - type: 'null' - - *468 + - *469 required: - permission - role_name @@ -77699,7 +77703,7 @@ paths: application/json: schema: type: array - items: &469 + items: &470 title: Commit Comment description: Commit Comment type: object @@ -77757,7 +77761,7 @@ paths: - created_at - updated_at examples: - default: &474 + default: &475 value: - html_url: https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e#commitcomment-1 url: https://api.github.com/repos/octocat/Hello-World/comments/1 @@ -77824,9 +77828,9 @@ paths: description: Response content: application/json: - schema: *469 + schema: *470 examples: - default: &475 + default: &476 value: html_url: https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e#commitcomment-1 url: https://api.github.com/repos/octocat/Hello-World/comments/1 @@ -77907,7 +77911,7 @@ paths: description: Response content: application/json: - schema: *469 + schema: *470 examples: default: value: @@ -78009,7 +78013,7 @@ paths: application/json: schema: type: array - items: &470 + items: &471 title: Reaction description: Reactions to conversations provide a way to help people express their feelings more simply and effectively. @@ -78132,9 +78136,9 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: &471 + default: &472 value: id: 1 node_id: MDg6UmVhY3Rpb24x @@ -78163,9 +78167,9 @@ paths: description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -78302,7 +78306,7 @@ paths: application/json: schema: type: array - items: *472 + items: *473 examples: default: &606 value: @@ -78400,7 +78404,7 @@ paths: parameters: - *340 - *341 - - &473 + - &474 name: commit_sha description: The SHA of the commit. in: path @@ -78474,7 +78478,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 - *17 - *19 responses: @@ -78484,9 +78488,9 @@ paths: application/json: schema: type: array - items: *469 + items: *470 examples: - default: *474 + default: *475 headers: Link: *67 x-github: @@ -78516,7 +78520,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 requestBody: required: true content: @@ -78551,9 +78555,9 @@ paths: description: Response content: application/json: - schema: *469 + schema: *470 examples: - default: *475 + default: *476 headers: Location: example: https://api.github.com/repos/octocat/Hello-World/comments/1 @@ -78583,7 +78587,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 - *17 - *19 responses: @@ -78593,7 +78597,7 @@ paths: application/json: schema: type: array - items: *476 + items: *437 examples: default: &597 value: @@ -79151,7 +79155,7 @@ paths: description: Response content: application/json: - schema: *472 + schema: *473 examples: default: &585 value: @@ -79816,7 +79820,7 @@ paths: application/json: schema: type: array - items: &692 + items: &693 title: Status description: The status of a commit. type: object @@ -80173,8 +80177,8 @@ paths: format: uri examples: - https://github.com/octocat/Hello-World/compare/master...topic.patch - base_commit: *472 - merge_base_commit: *472 + base_commit: *473 + merge_base_commit: *473 status: type: string enum: @@ -80198,7 +80202,7 @@ paths: - 6 commits: type: array - items: *472 + items: *473 files: type: array items: *483 @@ -86681,7 +86685,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 responses: '200': description: Response @@ -87666,7 +87670,7 @@ paths: format: uri examples: - https://api.github.com/repos/octocat/Hello-World/hooks/1/deliveries - last_response: &802 + last_response: &803 title: Hook Response type: object properties: @@ -88735,7 +88739,7 @@ paths: parameters: - *340 - *341 - - &736 + - &737 name: since description: A user ID. Only return users with an ID greater than this ID. in: query @@ -89454,7 +89458,7 @@ paths: type: array items: *537 examples: - default: &729 + default: &730 value: - id: 1 repository: @@ -90740,7 +90744,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -90797,16 +90801,16 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -94737,7 +94741,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -94795,16 +94799,16 @@ paths: description: Response content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Response content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -95991,7 +95995,7 @@ paths: type: string comments: type: array - items: *469 + items: *470 - title: Timeline Assigned Issue Event description: Timeline Assigned Issue Event type: object @@ -96782,7 +96786,7 @@ paths: parameters: - *340 - *341 - - *444 + - *445 responses: '200': description: Response @@ -97030,7 +97034,7 @@ paths: description: Successful Response (The resulting merge commit) content: application/json: - schema: *472 + schema: *473 examples: default: *585 '204': @@ -98888,7 +98892,7 @@ paths: application/json: schema: type: array - items: *476 + items: *437 examples: default: *597 headers: @@ -100141,7 +100145,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -100198,16 +100202,16 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -100460,7 +100464,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '202': description: Response when the codespace creation partially failed but is being retried in the background @@ -100468,7 +100472,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '401': *23 '403': *27 '404': *6 @@ -100875,7 +100879,7 @@ paths: application/json: schema: type: array - items: *472 + items: *473 examples: default: *606 headers: @@ -101212,7 +101216,7 @@ paths: description: Response content: application/json: - schema: *476 + schema: *437 examples: default: value: @@ -101784,7 +101788,7 @@ paths: description: Response content: application/json: - schema: *476 + schema: *437 examples: default: value: @@ -104348,7 +104352,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -104403,16 +104407,16 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -105430,7 +105434,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 - *650 responses: '200': @@ -105582,7 +105586,7 @@ paths: anyOf: - type: 'null' - *4 - metadata: &821 + metadata: &822 type: array description: A list of metadata key/value pairs associated with the secret scanning alert. @@ -105657,7 +105661,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 requestBody: required: true content: @@ -105818,7 +105822,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 - *19 - *17 responses: @@ -105829,7 +105833,7 @@ paths: schema: type: array description: List of locations where the secret was detected - items: &823 + items: &824 type: object properties: type: @@ -107418,6 +107422,1036 @@ paths: enabledForGitHubApps: true category: security-advisories subcategory: repository-advisories + "/repos/{owner}/{repo}/stacks": + get: + summary: List pull request stacks + description: Lists pull request stacks in a repository. + tags: + - pulls + operationId: pull-request-stacks/list + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks + parameters: + - *340 + - *341 + - name: pull_request + description: Filter to the stack containing this repository pull request number. + in: query + required: false + schema: + type: integer + - *17 + - *19 + responses: + '200': + description: Response + content: + application/json: + schema: + type: array + items: + title: Pull Request Stack Minimal + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + type: object + required: + - number + - state + - draft + - merged_at + - head + properties: + number: + type: integer + state: + type: string + enum: + - open + - closed + draft: + type: boolean + merged_at: + type: + - string + - 'null' + format: date-time + head: + type: object + required: + - ref + - sha + properties: + ref: + type: string + sha: + type: string + examples: + default: + value: + - id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + pull_requests: + - number: 101 + state: open + draft: false + merged_at: + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + - number: 102 + state: open + draft: false + merged_at: + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + open: true + created_at: '2026-04-15T10:00:00Z' + '404': *6 + '422': *15 + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + post: + summary: Create a pull request stack + description: |- + Creates a stack from an ordered list of pull request numbers. Provide the pull + request numbers from the bottom of the stack to the top. Each pull request's + base ref must match the previous pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/create + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + parameters: + - *340 + - *341 + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers forming the + stack from bottom to top. + items: + type: integer + minItems: 2 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 101 + - 102 + - 103 + responses: + '201': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: &691 + title: Pull Request Stack Pull Request + type: object + allOf: + - *86 + - type: object + required: + - node_id + - title + - state + - merged_at + - draft + - html_url + - user + properties: + node_id: + type: string + title: + type: string + state: + type: string + enum: + - open + - closed + merged_at: + type: + - string + - 'null' + format: date-time + draft: + type: boolean + html_url: + type: string + format: uri + user: + anyOf: + - type: 'null' + - *4 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't form a + valid stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't form a linear stack + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}": + get: + summary: Get a pull request stack + description: Gets a pull request stack by providing its stack number. + tags: + - pulls + operationId: pull-request-stacks/get + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack + parameters: + - *340 + - *341 + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: *691 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/add": + post: + summary: Add pull requests to a pull request stack + description: |- + Appends an ordered list of pull request numbers onto the top of an existing + stack. Provide only the pull requests you want to add, from the current top of + the stack upward. The first new pull request's base ref must match the current + top pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/add + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + parameters: + - *340 + - *341 + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers to append to + the stack, from the current top upward. + items: + type: integer + minItems: 1 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 104 + - 102 + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: *691 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: *3 + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't be appended + to the stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't continue the stack linearly + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": + post: + summary: Remove pull requests from a pull request stack + description: |- + Removes the unmerged pull requests from a stack. Pull requests that cannot be + unstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated + stack is returned with a `200`. When no pull requests remain, the stack is + dissolved and a `204` is returned. + tags: + - pulls + operationId: pull-request-stacks/unstack + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + parameters: + - *340 + - *341 + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: *691 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: *3 + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the stack can't be unstacked because every + pull request in it is locked and cannot be removed. + content: + application/json: + schema: *125 + examples: + cannot_be_removed: + summary: Every pull request in the stack is locked and can't be + removed + value: + message: Pull requests in this stack cannot be removed + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + '204': *58 + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks "/repos/{owner}/{repo}/stargazers": get: summary: List stargazers @@ -107541,7 +108575,7 @@ paths: application/json: schema: type: array - items: &691 + items: &692 title: Code Frequency Stat description: Code Frequency Stat type: array @@ -107914,7 +108948,7 @@ paths: application/json: schema: type: array - items: *691 + items: *692 examples: default: value: @@ -108004,7 +109038,7 @@ paths: description: Response content: application/json: - schema: *692 + schema: *693 examples: default: value: @@ -108098,7 +109132,7 @@ paths: description: if you subscribe to the repository content: application/json: - schema: &693 + schema: &694 title: Repository Invitation description: Repository invitations let you manage who you collaborate with. @@ -108198,7 +109232,7 @@ paths: description: Response content: application/json: - schema: *693 + schema: *694 examples: default: value: @@ -108408,7 +109442,7 @@ paths: description: Response content: application/json: - schema: &694 + schema: &695 title: Topic description: A topic aggregates entities that are related to a subject. type: object @@ -108420,7 +109454,7 @@ paths: required: - names examples: - default: &695 + default: &696 value: names: - octocat @@ -108475,9 +109509,9 @@ paths: description: Response content: application/json: - schema: *694 + schema: *695 examples: - default: *695 + default: *696 '404': *6 '422': *7 x-github: @@ -108500,7 +109534,7 @@ paths: parameters: - *340 - *341 - - &696 + - &697 name: per description: The time frame to display results for. in: query @@ -108531,7 +109565,7 @@ paths: - 128 clones: type: array - items: &697 + items: &698 title: Traffic type: object properties: @@ -108779,7 +109813,7 @@ paths: parameters: - *340 - *341 - - *696 + - *697 responses: '200': description: Response @@ -108800,7 +109834,7 @@ paths: - 3782 views: type: array - items: *697 + items: *698 required: - uniques - count @@ -109573,7 +110607,7 @@ paths: examples: - 73..77 - 77..78 - text_matches: &698 + text_matches: &699 title: Search Result Text Matches type: array items: @@ -109736,7 +110770,7 @@ paths: enum: - author-date - committer-date - - &699 + - &700 name: order description: Determines whether the first search result returned is the highest number of matches (`desc`) or lowest number of matches (`asc`). This parameter @@ -109856,7 +110890,7 @@ paths: type: number node_id: type: string - text_matches: *698 + text_matches: *699 required: - sha - node_id @@ -110048,7 +111082,7 @@ paths: - interactions - created - updated - - *699 + - *700 - *17 - *19 - name: advanced_search @@ -110162,8 +111196,8 @@ paths: type: - string - 'null' - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -110194,7 +111228,7 @@ paths: - string - 'null' format: date-time - text_matches: *698 + text_matches: *699 pull_request: type: object properties: @@ -110470,7 +111504,7 @@ paths: enum: - created - updated - - *699 + - *700 - *17 - *19 responses: @@ -110515,7 +111549,7 @@ paths: - 'null' score: type: number - text_matches: *698 + text_matches: *699 required: - id - node_id @@ -110600,7 +111634,7 @@ paths: - forks - help-wanted-issues - updated - - *699 + - *700 - *17 - *19 responses: @@ -110846,7 +111880,7 @@ paths: - admin - pull - push - text_matches: *698 + text_matches: *699 temp_clone_token: type: string allow_merge_commit: @@ -111154,7 +112188,7 @@ paths: - string - 'null' format: uri - text_matches: *698 + text_matches: *699 related: type: - array @@ -111347,7 +112381,7 @@ paths: - followers - repositories - joined - - *699 + - *700 - *17 - *19 responses: @@ -111457,7 +112491,7 @@ paths: type: - boolean - 'null' - text_matches: *698 + text_matches: *699 blog: type: - string @@ -111539,7 +112573,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#get-a-team-legacy parameters: - - &702 + - &703 name: team_id description: The unique identifier of the team. in: path @@ -111580,7 +112614,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#update-a-team-legacy parameters: - - *702 + - *703 requestBody: required: true content: @@ -111681,7 +112715,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#delete-a-team-legacy parameters: - - *702 + - *703 responses: '204': description: Response @@ -111710,7 +112744,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#list-pending-team-invitations-legacy parameters: - - *702 + - *703 - *17 - *19 responses: @@ -111750,7 +112784,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#list-team-members-legacy parameters: - - *702 + - *703 - name: role description: Filters members returned by their role in the team. in: query @@ -111771,9 +112805,9 @@ paths: application/json: schema: type: array - items: *703 + items: *704 examples: - default: *704 + default: *705 headers: Link: *67 '404': *6 @@ -111801,7 +112835,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#get-team-member-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -111838,7 +112872,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#add-team-member-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -111878,7 +112912,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#remove-team-member-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -111915,7 +112949,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#get-team-membership-for-a-user-legacy parameters: - - *702 + - *703 - *71 responses: '200': @@ -111924,7 +112958,7 @@ paths: application/json: schema: *339 examples: - response-if-user-is-a-team-maintainer: *705 + response-if-user-is-a-team-maintainer: *706 '404': *6 x-github: githubCloudOnly: false @@ -111957,7 +112991,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#add-or-update-team-membership-for-a-user-legacy parameters: - - *702 + - *703 - *71 requestBody: required: false @@ -111985,7 +113019,7 @@ paths: application/json: schema: *339 examples: - response-if-users-membership-with-team-is-now-pending: *706 + response-if-users-membership-with-team-is-now-pending: *707 '403': description: Forbidden if team synchronization is set up '422': @@ -112019,7 +113053,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#remove-team-membership-for-a-user-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -112047,7 +113081,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#list-team-repositories-legacy parameters: - - *702 + - *703 - *17 - *19 responses: @@ -112089,7 +113123,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository-legacy parameters: - - *702 + - *703 - *340 - *341 responses: @@ -112097,7 +113131,7 @@ paths: description: Alternative response with extra repository information content: application/json: - schema: *707 + schema: *708 examples: alternative-response-with-extra-repository-information: value: @@ -112248,7 +113282,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#add-or-update-team-repository-permissions-legacy parameters: - - *702 + - *703 - *340 - *341 requestBody: @@ -112300,7 +113334,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#remove-a-repository-from-a-team-legacy parameters: - - *702 + - *703 - *340 - *341 responses: @@ -112327,7 +113361,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#list-child-teams-legacy parameters: - - *702 + - *703 - *17 - *19 responses: @@ -112339,7 +113373,7 @@ paths: type: array items: *201 examples: - response-if-child-teams-exist: *708 + response-if-child-teams-exist: *709 headers: Link: *67 '404': *6 @@ -112372,7 +113406,7 @@ paths: application/json: schema: oneOf: - - &710 + - &711 title: Private User description: Private User type: object @@ -112622,7 +113656,7 @@ paths: - private_gists - total_private_repos - two_factor_authentication - - *709 + - *710 examples: response-with-public-and-private-profile-information: summary: Response with public and private profile information @@ -112782,7 +113816,7 @@ paths: description: Response content: application/json: - schema: *710 + schema: *711 examples: default: value: @@ -113128,7 +114162,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '202': description: Response when the codespace creation partially failed but is being retried in the background @@ -113136,7 +114170,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '401': *23 '403': *27 '404': *6 @@ -113180,7 +114214,7 @@ paths: type: integer secrets: type: array - items: &711 + items: &712 title: Codespaces Secret description: Secrets for a GitHub Codespace. type: object @@ -113222,7 +114256,7 @@ paths: - visibility - selected_repositories_url examples: - default: *463 + default: *464 headers: Link: *67 x-github: @@ -113300,7 +114334,7 @@ paths: description: Response content: application/json: - schema: *711 + schema: *712 examples: default: value: @@ -113598,7 +114632,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '304': *36 '500': *54 '401': *23 @@ -113656,7 +114690,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '401': *23 '403': *27 '404': *6 @@ -113713,7 +114747,7 @@ paths: description: Response content: application/json: - schema: &712 + schema: &713 type: object title: Fetches information about an export of a codespace. description: An export of a codespace. Also, latest export details @@ -113766,7 +114800,7 @@ paths: examples: - https://github.com/octocat/hello-world/tree/:branch examples: - default: &713 + default: &714 value: state: succeeded completed_at: '2022-01-01T14:59:22Z' @@ -113811,9 +114845,9 @@ paths: description: Response content: application/json: - schema: *712 + schema: *713 examples: - default: *713 + default: *714 '404': *6 x-github: githubCloudOnly: false @@ -113850,9 +114884,9 @@ paths: type: integer machines: type: array - items: *462 + items: *463 examples: - default: *714 + default: *715 '304': *36 '500': *54 '401': *23 @@ -113941,7 +114975,7 @@ paths: machine: anyOf: - type: 'null' - - *462 + - *463 devcontainer_path: description: Path to devcontainer.json from repo root used to create Codespace. @@ -114746,7 +115780,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '304': *36 '500': *54 '400': *14 @@ -114786,7 +115820,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '500': *54 '401': *23 '403': *27 @@ -114818,7 +115852,7 @@ paths: type: array items: *263 examples: - default: &726 + default: &727 value: - id: 197 name: hello_docker @@ -114919,7 +115953,7 @@ paths: application/json: schema: type: array - items: &715 + items: &716 title: Email description: Email type: object @@ -114989,9 +116023,9 @@ paths: application/json: schema: type: array - items: *715 + items: *716 examples: - default: &728 + default: &729 value: - email: octocat@github.com verified: true @@ -115068,7 +116102,7 @@ paths: application/json: schema: type: array - items: *715 + items: *716 examples: default: value: @@ -115326,7 +116360,7 @@ paths: application/json: schema: type: array - items: &716 + items: &717 title: GPG Key description: A unique encryption key type: object @@ -115471,7 +116505,7 @@ paths: - subkeys - revoked examples: - default: &745 + default: &746 value: - id: 3 name: Octocat's GPG Key @@ -115556,9 +116590,9 @@ paths: description: Response content: application/json: - schema: *716 + schema: *717 examples: - default: &717 + default: &718 value: id: 3 name: Octocat's GPG Key @@ -115615,7 +116649,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/gpg-keys#get-a-gpg-key-for-the-authenticated-user parameters: - - &718 + - &719 name: gpg_key_id description: The unique identifier of the GPG key. in: path @@ -115627,9 +116661,9 @@ paths: description: Response content: application/json: - schema: *716 + schema: *717 examples: - default: *717 + default: *718 '404': *6 '304': *36 '403': *27 @@ -115652,7 +116686,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/gpg-keys#delete-a-gpg-key-for-the-authenticated-user parameters: - - *718 + - *719 responses: '204': description: Response @@ -116119,7 +117153,7 @@ paths: application/json: schema: type: array - items: &719 + items: &720 title: Key description: Key type: object @@ -116222,9 +117256,9 @@ paths: description: Response content: application/json: - schema: *719 + schema: *720 examples: - default: &720 + default: &721 value: key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 id: 2 @@ -116263,9 +117297,9 @@ paths: description: Response content: application/json: - schema: *719 + schema: *720 examples: - default: *720 + default: *721 '404': *6 '304': *36 '403': *27 @@ -116321,7 +117355,7 @@ paths: application/json: schema: type: array - items: &721 + items: &722 title: User Marketplace Purchase description: User Marketplace Purchase type: object @@ -116400,7 +117434,7 @@ paths: - account - plan examples: - default: &722 + default: &723 value: - billing_cycle: monthly next_billing_date: '2017-11-11T00:00:00Z' @@ -116462,9 +117496,9 @@ paths: application/json: schema: type: array - items: *721 + items: *722 examples: - default: *722 + default: *723 headers: Link: *67 '304': *36 @@ -116707,7 +117741,7 @@ paths: application/json: schema: *255 examples: - default: &723 + default: &724 value: url: https://api.github.com/orgs/octocat/memberships/defunkt state: active @@ -116756,7 +117790,7 @@ paths: application/json: schema: *255 examples: - default: *723 + default: *724 '403': *27 '404': *6 '422': *15 @@ -117490,7 +118524,7 @@ paths: url: https://docs.github.com/rest/migrations/users#unlock-a-user-repository parameters: - *258 - - *724 + - *725 responses: '204': description: Response @@ -117605,7 +118639,7 @@ paths: - docker - nuget - container - - *725 + - *726 - *19 - *17 responses: @@ -117617,8 +118651,8 @@ paths: type: array items: *263 examples: - default: *726 - '400': *727 + default: *727 + '400': *728 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -117647,7 +118681,7 @@ paths: application/json: schema: *263 examples: - default: &746 + default: &747 value: id: 40201 name: octo-name @@ -118009,9 +119043,9 @@ paths: application/json: schema: type: array - items: *715 + items: *716 examples: - default: *728 + default: *729 headers: Link: *67 '304': *36 @@ -118124,7 +119158,7 @@ paths: type: array items: *79 examples: - default: &735 + default: &736 summary: Default response value: - id: 1296269 @@ -118484,7 +119518,7 @@ paths: type: array items: *537 examples: - default: *729 + default: *730 headers: Link: *67 '304': *36 @@ -118563,7 +119597,7 @@ paths: application/json: schema: type: array - items: &730 + items: &731 title: Social account description: Social media account type: object @@ -118580,7 +119614,7 @@ paths: - provider - url examples: - default: &731 + default: &732 value: - provider: twitter url: https://twitter.com/github @@ -118643,9 +119677,9 @@ paths: application/json: schema: type: array - items: *730 + items: *731 examples: - default: *731 + default: *732 '422': *15 '304': *36 '404': *6 @@ -118733,7 +119767,7 @@ paths: application/json: schema: type: array - items: &732 + items: &733 title: SSH Signing Key description: A public SSH key used to sign Git commits type: object @@ -118753,7 +119787,7 @@ paths: - title - created_at examples: - default: &763 + default: &764 value: - id: 2 key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 @@ -118818,9 +119852,9 @@ paths: description: Response content: application/json: - schema: *732 + schema: *733 examples: - default: &733 + default: &734 value: id: 2 key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 @@ -118850,7 +119884,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/ssh-signing-keys#get-an-ssh-signing-key-for-the-authenticated-user parameters: - - &734 + - &735 name: ssh_signing_key_id description: The unique identifier of the SSH signing key. in: path @@ -118862,9 +119896,9 @@ paths: description: Response content: application/json: - schema: *732 + schema: *733 examples: - default: *733 + default: *734 '404': *6 '304': *36 '403': *27 @@ -118887,7 +119921,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/ssh-signing-keys#delete-an-ssh-signing-key-for-the-authenticated-user parameters: - - *734 + - *735 responses: '204': description: Response @@ -118916,7 +119950,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/activity/starring#list-repositories-starred-by-the-authenticated-user parameters: - - &764 + - &765 name: sort description: The property to sort the results by. `created` means when the repository was starred. `updated` means when the repository was last pushed @@ -118941,11 +119975,11 @@ paths: type: array items: *79 examples: - default-response: *735 + default-response: *736 application/vnd.github.v3.star+json: schema: type: array - items: &765 + items: &766 title: Starred Repository description: Starred Repository type: object @@ -119314,10 +120348,10 @@ paths: application/json: schema: oneOf: + - *711 - *710 - - *709 examples: - default-response: &739 + default-response: &740 summary: Default response value: login: octocat @@ -119352,7 +120386,7 @@ paths: following: 0 created_at: '2008-01-14T04:33:35Z' updated_at: '2008-01-14T04:33:35Z' - response-with-git-hub-plan-information: &740 + response-with-git-hub-plan-information: &741 summary: Response with GitHub plan information value: login: octocat @@ -119409,7 +120443,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/projects/drafts#create-draft-item-for-user-owned-project parameters: - - &737 + - &738 name: user_id description: The unique identifier of the user. in: path @@ -119475,7 +120509,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/users#list-users parameters: - - *736 + - *737 - *17 responses: '200': @@ -119510,7 +120544,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/projects/views#create-a-view-for-a-user-owned-project parameters: - - *737 + - *738 - *281 requestBody: required: true @@ -119585,7 +120619,7 @@ paths: description: Response for creating a view in a user-owned project. content: application/json: - schema: *738 + schema: *739 examples: table_view: summary: Response for creating a table view @@ -119637,11 +120671,11 @@ paths: application/json: schema: oneOf: + - *711 - *710 - - *709 examples: - default-response: *739 - response-with-git-hub-plan-information: *740 + default-response: *740 + response-with-git-hub-plan-information: *741 '404': *6 x-github: githubCloudOnly: false @@ -119691,8 +120725,8 @@ paths: required: - subject_digests examples: - default: *741 - withPredicateType: *742 + default: *742 + withPredicateType: *743 responses: '200': description: Response @@ -119746,7 +120780,7 @@ paths: description: The cursor to the previous page. description: Information about the current page. examples: - default: *743 + default: *744 x-github: githubCloudOnly: false enabledForGitHubApps: true @@ -120235,7 +121269,7 @@ paths: application/json: schema: *197 examples: - default: &744 + default: &745 summary: Example response for a user copilot space value: id: 42 @@ -120336,7 +121370,7 @@ paths: application/json: schema: *197 examples: - default: *744 + default: *745 '403': *27 '404': *6 x-github: @@ -120462,7 +121496,7 @@ paths: application/json: schema: *197 examples: - default: *744 + default: *745 '403': *27 '404': *6 '422': *15 @@ -121230,7 +122264,7 @@ paths: type: array items: *263 examples: - default: *726 + default: *727 '403': *27 '401': *23 x-github: @@ -121614,9 +122648,9 @@ paths: application/json: schema: type: array - items: *716 + items: *717 examples: - default: *745 + default: *746 headers: Link: *67 x-github: @@ -121845,7 +122879,7 @@ paths: - docker - nuget - container - - *725 + - *726 - *71 - *19 - *17 @@ -121858,10 +122892,10 @@ paths: type: array items: *263 examples: - default: *726 + default: *727 '403': *27 '401': *23 - '400': *727 + '400': *728 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -121891,7 +122925,7 @@ paths: application/json: schema: *263 examples: - default: *746 + default: *747 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -122240,7 +123274,7 @@ paths: type: array items: *284 examples: - default: *747 + default: *748 headers: Link: *67 '304': *36 @@ -122300,7 +123334,7 @@ paths: description: The options available for single select fields. At least one option must be provided when creating a single select field. - items: *748 + items: *749 required: - name - data_type @@ -122316,7 +123350,7 @@ paths: description: The field's data type. enum: - iteration - iteration_configuration: *749 + iteration_configuration: *750 required: - name - data_type @@ -122338,8 +123372,8 @@ paths: value: name: Due date data_type: date - single_select_field: *750 - iteration_field: *751 + single_select_field: *751 + iteration_field: *752 responses: '201': description: Response @@ -122347,11 +123381,11 @@ paths: application/json: schema: *284 examples: - text_field: *752 - number_field: *753 - date_field: *754 - single_select_field: *755 - iteration_field: *756 + text_field: *753 + number_field: *754 + date_field: *755 + single_select_field: *756 + iteration_field: *757 '304': *36 '403': *27 '401': *23 @@ -122373,7 +123407,7 @@ paths: url: https://docs.github.com/rest/projects/fields#get-project-field-for-user parameters: - *281 - - *757 + - *758 - *71 responses: '200': @@ -122382,7 +123416,7 @@ paths: application/json: schema: *284 examples: - default: *758 + default: *759 headers: Link: *67 '304': *36 @@ -122739,7 +123773,7 @@ paths: parameters: - *281 - *71 - - *759 + - *760 - name: fields description: |- Limit results to specific fields, by their IDs. If not specified, the @@ -123278,7 +124312,7 @@ paths: parameters: - *71 - *117 - - *760 + - *761 - *119 responses: '200': @@ -123377,9 +124411,9 @@ paths: - *117 - *118 - *119 - - *761 - - *122 - *762 + - *122 + - *763 responses: '200': description: Response when getting a billing usage summary @@ -123513,9 +124547,9 @@ paths: application/json: schema: type: array - items: *730 + items: *731 examples: - default: *731 + default: *732 headers: Link: *67 x-github: @@ -123545,9 +124579,9 @@ paths: application/json: schema: type: array - items: *732 + items: *733 examples: - default: *763 + default: *764 headers: Link: *67 x-github: @@ -123572,7 +124606,7 @@ paths: url: https://docs.github.com/rest/activity/starring#list-repositories-starred-by-a-user parameters: - *71 - - *764 + - *765 - *61 - *17 - *19 @@ -123584,11 +124618,11 @@ paths: schema: anyOf: - type: array - items: *765 + items: *766 - type: array items: *79 examples: - default-response: *735 + default-response: *736 headers: Link: *67 x-github: @@ -123748,7 +124782,7 @@ webhooks: type: string enum: - disabled - enterprise: &766 + enterprise: &767 title: Enterprise description: |- An enterprise on GitHub. Webhook payloads contain the `enterprise` property when the webhook is configured @@ -123817,7 +124851,7 @@ webhooks: - created_at - updated_at - avatar_url - installation: &767 + installation: &768 title: Simple Installation description: |- The GitHub App installation. Webhook payloads contain the `installation` property when the event is configured @@ -123838,7 +124872,7 @@ webhooks: required: - id - node_id - organization: &768 + organization: &769 title: Organization Simple description: |- A GitHub organization. Webhook payloads contain the `organization` property when the webhook is configured for an @@ -123911,7 +124945,7 @@ webhooks: - public_members_url - avatar_url - description - repository: &769 + repository: &770 title: Repository description: |- The repository on GitHub where the event occurred. Webhook payloads contain the `repository` property @@ -124837,10 +125871,10 @@ webhooks: type: string enum: - enabled - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -124916,11 +125950,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - rule: &770 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + rule: &771 title: branch protection rule description: The branch protection rule. Includes a `name` and all the [branch protection settings](https://docs.github.com/github/administering-a-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#about-branch-protection-settings) @@ -125143,11 +126177,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - rule: *770 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + rule: *771 sender: *4 required: - action @@ -125335,11 +126369,11 @@ webhooks: - everyone required: - from - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - rule: *770 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + rule: *771 sender: *4 required: - action @@ -125423,7 +126457,7 @@ webhooks: type: string enum: - completed - check_run: &772 + check_run: &773 title: CheckRun description: A check performed on the code of a given code change type: object @@ -125533,7 +126567,7 @@ webhooks: - examples: - neutral - deployment: *771 + deployment: *772 details_url: type: string examples: @@ -125631,10 +126665,10 @@ webhooks: - output - app - pull_requests - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 sender: *4 required: - check_run @@ -126025,11 +127059,11 @@ webhooks: type: string enum: - created - check_run: *772 - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + check_run: *773 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 sender: *4 required: - check_run @@ -126423,11 +127457,11 @@ webhooks: type: string enum: - requested_action - check_run: *772 - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + check_run: *773 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 requested_action: description: The action requested by the user. type: object @@ -126830,11 +127864,11 @@ webhooks: type: string enum: - rerequested - check_run: *772 - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + check_run: *773 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 sender: *4 required: - check_run @@ -127819,10 +128853,10 @@ webhooks: - latest_check_runs_count - check_runs_url - head_commit - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -128536,10 +129570,10 @@ webhooks: - latest_check_runs_count - check_runs_url - head_commit - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -129247,10 +130281,10 @@ webhooks: - latest_check_runs_count - check_runs_url - head_commit - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -129571,20 +130605,20 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: &773 + commit_oid: &774 description: The commit SHA of the code scanning alert. When the action is `reopened_by_user` or `closed_by_user`, the event was triggered by the `sender` and this value will be empty. type: string - enterprise: *766 - installation: *767 - organization: *768 - ref: &774 + enterprise: *767 + installation: *768 + organization: *769 + ref: &775 description: The Git reference of the code scanning alert. When the action is `reopened_by_user` or `closed_by_user`, the event was triggered by the `sender` and this value will be empty. type: string - repository: *769 + repository: *770 sender: *4 required: - action @@ -129992,12 +131026,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -130280,12 +131314,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -130631,12 +131665,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -130926,9 +131960,9 @@ webhooks: type: - string - 'null' - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 ref: description: The Git reference of the code scanning alert. When the action is `reopened_by_user` or `closed_by_user`, the event @@ -130936,7 +131970,7 @@ webhooks: type: - string - 'null' - repository: *769 + repository: *770 sender: *4 required: - action @@ -131182,12 +132216,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -131508,10 +132542,10 @@ webhooks: - dismissed_reason - rule - tool - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -131771,10 +132805,10 @@ webhooks: - updated_at - author_association - body - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -131855,18 +132889,18 @@ webhooks: type: - string - 'null' - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 master_branch: description: The name of the repository's default branch (usually `main`). type: string - organization: *768 - pusher_type: &775 + organization: *769 + pusher_type: &776 description: The pusher type for the event. Can be either `user` or a deploy key. type: string - ref: &776 + ref: &777 description: The [`git ref`](https://docs.github.com/rest/git/refs#get-a-reference) resource. type: string @@ -131876,7 +132910,7 @@ webhooks: enum: - tag - branch - repository: *769 + repository: *770 sender: *4 required: - ref @@ -131959,9 +132993,9 @@ webhooks: enum: - created definition: *292 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -132046,9 +133080,9 @@ webhooks: description: The name of the property that was deleted. required: - property_name - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -132126,9 +133160,9 @@ webhooks: enum: - promote_to_enterprise definition: *292 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -132206,9 +133240,9 @@ webhooks: enum: - updated definition: *292 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -132285,10 +133319,10 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - repository: *769 - organization: *768 + enterprise: *767 + installation: *768 + repository: *770 + organization: *769 sender: *4 new_property_values: type: array @@ -132373,18 +133407,18 @@ webhooks: title: delete event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - pusher_type: *775 - ref: *776 + enterprise: *767 + installation: *768 + organization: *769 + pusher_type: *776 + ref: *777 ref_type: description: The type of Git ref object deleted in the repository. type: string enum: - tag - branch - repository: *769 + repository: *770 sender: *4 required: - ref @@ -132465,10 +133499,10 @@ webhooks: enum: - assignees_changed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132549,10 +133583,10 @@ webhooks: enum: - auto_dismissed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132634,10 +133668,10 @@ webhooks: enum: - auto_reopened alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132719,10 +133753,10 @@ webhooks: enum: - created alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132802,10 +133836,10 @@ webhooks: enum: - dismissed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132885,10 +133919,10 @@ webhooks: enum: - fixed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132969,10 +134003,10 @@ webhooks: enum: - reintroduced alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -133052,10 +134086,10 @@ webhooks: enum: - reopened alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -133132,9 +134166,9 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - key: &777 + enterprise: *767 + installation: *768 + key: &778 description: The [`deploy key`](https://docs.github.com/rest/deploy-keys/deploy-keys#get-a-deploy-key) resource. type: object @@ -133172,8 +134206,8 @@ webhooks: - verified - created_at - read_only - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -133250,11 +134284,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - key: *777 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + key: *778 + organization: *769 + repository: *770 sender: *4 required: - action @@ -133821,12 +134855,12 @@ webhooks: - updated_at - statuses_url - repository_url - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: &781 + workflow: &782 title: Workflow type: - object @@ -134581,9 +135615,9 @@ webhooks: pull_requests: type: array items: *602 - repository: *769 - organization: *768 - installation: *767 + repository: *770 + organization: *769 + installation: *768 sender: *4 responses: '200': @@ -134654,7 +135688,7 @@ webhooks: type: string enum: - approved - approver: &778 + approver: &779 type: object properties: avatar_url: @@ -134697,11 +135731,11 @@ webhooks: type: string comment: type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - reviewers: &779 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + reviewers: &780 type: array items: type: object @@ -134782,7 +135816,7 @@ webhooks: sender: *4 since: type: string - workflow_job_run: &780 + workflow_job_run: &781 type: object properties: conclusion: @@ -135528,18 +136562,18 @@ webhooks: type: string enum: - rejected - approver: *778 + approver: *779 comment: type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - reviewers: *779 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + reviewers: *780 sender: *4 since: type: string - workflow_job_run: *780 + workflow_job_run: *781 workflow_job_runs: type: array items: @@ -136256,13 +137290,13 @@ webhooks: type: string enum: - requested - enterprise: *766 + enterprise: *767 environment: type: string - installation: *767 - organization: *768 - repository: *769 - requestor: &786 + installation: *768 + organization: *769 + repository: *770 + requestor: &787 title: User type: - object @@ -138195,12 +139229,12 @@ webhooks: - updated_at - deployment_url - repository_url - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: *781 + workflow: *782 workflow_run: title: Deployment Workflow Run type: @@ -138891,7 +139925,7 @@ webhooks: type: string enum: - answered - answer: &784 + answer: &785 type: object properties: author_association: @@ -139051,11 +140085,11 @@ webhooks: - created_at - updated_at - body - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139182,11 +140216,11 @@ webhooks: - from required: - category - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139269,11 +140303,11 @@ webhooks: type: string enum: - closed - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139355,7 +140389,7 @@ webhooks: type: string enum: - created - comment: &783 + comment: &784 type: object properties: author_association: @@ -139515,11 +140549,11 @@ webhooks: - updated_at - body - reactions - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139602,12 +140636,12 @@ webhooks: type: string enum: - deleted - comment: *783 - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + comment: *784 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139702,12 +140736,12 @@ webhooks: - from required: - body - comment: *783 - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + comment: *784 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139791,11 +140825,11 @@ webhooks: type: string enum: - created - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139877,11 +140911,11 @@ webhooks: type: string enum: - deleted - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139981,11 +141015,11 @@ webhooks: type: string required: - from - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140067,10 +141101,10 @@ webhooks: type: string enum: - labeled - discussion: *782 - enterprise: *766 - installation: *767 - label: &785 + discussion: *783 + enterprise: *767 + installation: *768 + label: &786 title: Label type: object properties: @@ -140103,8 +141137,8 @@ webhooks: - color - default - description - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140187,11 +141221,11 @@ webhooks: type: string enum: - locked - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140273,11 +141307,11 @@ webhooks: type: string enum: - pinned - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140359,11 +141393,11 @@ webhooks: type: string enum: - reopened - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140448,16 +141482,16 @@ webhooks: changes: type: object properties: - new_discussion: *782 - new_repository: *769 + new_discussion: *783 + new_repository: *770 required: - new_discussion - new_repository - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140540,10 +141574,10 @@ webhooks: type: string enum: - unanswered - discussion: *782 - old_answer: *784 - organization: *768 - repository: *769 + discussion: *783 + old_answer: *785 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140625,12 +141659,12 @@ webhooks: type: string enum: - unlabeled - discussion: *782 - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140713,11 +141747,11 @@ webhooks: type: string enum: - unlocked - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140799,11 +141833,11 @@ webhooks: type: string enum: - unpinned - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140876,7 +141910,7 @@ webhooks: description: A user forks a repository. type: object properties: - enterprise: *766 + enterprise: *767 forkee: description: The created [`repository`](https://docs.github.com/rest/repos/repos#get-a-repository) resource. @@ -141554,9 +142588,9 @@ webhooks: type: integer watchers_count: type: integer - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - forkee @@ -141702,9 +142736,9 @@ webhooks: title: gollum event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pages: description: The pages that were updated. type: array @@ -141742,7 +142776,7 @@ webhooks: - action - sha - html_url - repository: *769 + repository: *770 sender: *4 required: - pages @@ -141818,10 +142852,10 @@ webhooks: type: string enum: - created - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: &787 + organization: *769 + repositories: &788 description: An array of repository objects that the installation can access. type: array @@ -141847,8 +142881,8 @@ webhooks: - name - full_name - private - repository: *769 - requester: *786 + repository: *770 + requester: *787 sender: *4 required: - action @@ -141923,11 +142957,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -142004,11 +143038,11 @@ webhooks: type: string enum: - new_permissions_accepted - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -142085,10 +143119,10 @@ webhooks: type: string enum: - added - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories_added: &788 + organization: *769 + repositories_added: &789 description: An array of repository objects, which were added to the installation. type: array @@ -142134,15 +143168,15 @@ webhooks: private: description: Whether the repository is private or public. type: boolean - repository: *769 - repository_selection: &789 + repository: *770 + repository_selection: &790 description: Describe whether all repositories have been selected or there's a selection involved type: string enum: - all - selected - requester: *786 + requester: *787 sender: *4 required: - action @@ -142221,10 +143255,10 @@ webhooks: type: string enum: - removed - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories_added: *788 + organization: *769 + repositories_added: *789 repositories_removed: description: An array of repository objects, which were removed from the installation. @@ -142251,9 +143285,9 @@ webhooks: - name - full_name - private - repository: *769 - repository_selection: *789 - requester: *786 + repository: *770 + repository_selection: *790 + requester: *787 sender: *4 required: - action @@ -142332,11 +143366,11 @@ webhooks: type: string enum: - suspend - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -142518,10 +143552,10 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 target_type: type: string @@ -142600,11 +143634,11 @@ webhooks: type: string enum: - unsuspend - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -142860,8 +143894,8 @@ webhooks: - performed_via_github_app - body - reactions - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -143673,8 +144707,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -144035,8 +145069,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -144116,7 +145150,7 @@ webhooks: type: string enum: - deleted - comment: &790 + comment: &791 title: issue comment description: The [comment](https://docs.github.com/rest/issues/comments#get-an-issue-comment) itself. @@ -144291,8 +145325,8 @@ webhooks: - performed_via_github_app - body - reactions - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -145100,8 +146134,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -145464,8 +146498,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -145545,7 +146579,7 @@ webhooks: type: string enum: - edited - changes: &814 + changes: &815 description: The changes to the comment. type: object properties: @@ -145557,9 +146591,9 @@ webhooks: type: string required: - from - comment: *790 - enterprise: *766 - installation: *767 + comment: *791 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -146370,8 +147404,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -146732,8 +147766,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -146814,9 +147848,9 @@ webhooks: type: string enum: - pinned - comment: *790 - enterprise: *766 - installation: *767 + comment: *791 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -147629,8 +148663,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -147993,8 +149027,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -148074,9 +149108,9 @@ webhooks: type: string enum: - unpinned - comment: *790 - enterprise: *766 - installation: *767 + comment: *791 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -148889,8 +149923,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -149253,8 +150287,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -149343,9 +150377,9 @@ webhooks: type: number blocking_issue: *83 blocking_issue_repo: *79 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -149434,9 +150468,9 @@ webhooks: type: number blocking_issue: *83 blocking_issue_repo: *79 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -149524,9 +150558,9 @@ webhooks: description: The ID of the blocking issue. type: number blocking_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -149615,9 +150649,9 @@ webhooks: description: The ID of the blocking issue. type: number blocking_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -149697,10 +150731,10 @@ webhooks: type: string enum: - assigned - assignee: *786 - enterprise: *766 - installation: *767 - issue: &791 + assignee: *787 + enterprise: *767 + installation: *768 + issue: &792 title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. @@ -150511,8 +151545,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -150635,8 +151669,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -150716,8 +151750,8 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. @@ -151533,8 +152567,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -151800,8 +152834,8 @@ webhooks: required: - state - closed_at - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -151880,8 +152914,8 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -152688,8 +153722,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -152811,8 +153845,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -152891,8 +153925,8 @@ webhooks: type: string enum: - demilestoned - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -153722,8 +154756,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -153824,7 +154858,7 @@ webhooks: format: uri user_view_type: type: string - milestone: &792 + milestone: &793 title: Milestone description: A collection of related issues and pull requests. type: object @@ -153967,8 +155001,8 @@ webhooks: - updated_at - due_on - closed_at - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -154067,8 +155101,8 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -154879,8 +155913,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -155003,9 +156037,9 @@ webhooks: - active_lock_reason - body - reactions - label: *785 - organization: *768 - repository: *769 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -155085,9 +156119,9 @@ webhooks: type: string enum: - field_added - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 issue_field: type: object description: The issue field whose value was set or updated on the @@ -155253,8 +156287,8 @@ webhooks: - id required: - from - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -155334,9 +156368,9 @@ webhooks: type: string enum: - field_removed - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 issue_field: type: object description: The issue field whose value was cleared from the issue. @@ -155423,8 +156457,8 @@ webhooks: - 'null' required: - id - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -155504,8 +156538,8 @@ webhooks: type: string enum: - labeled - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -156315,8 +157349,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -156439,9 +157473,9 @@ webhooks: - active_lock_reason - body - reactions - label: *785 - organization: *768 - repository: *769 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -156521,8 +157555,8 @@ webhooks: type: string enum: - locked - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -157357,8 +158391,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -157458,8 +158492,8 @@ webhooks: format: uri user_view_type: type: string - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -157538,8 +158572,8 @@ webhooks: type: string enum: - milestoned - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -158368,8 +159402,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -158469,9 +159503,9 @@ webhooks: format: uri user_view_type: type: string - milestone: *792 - organization: *768 - repository: *769 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -159358,8 +160392,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -159954,8 +160988,8 @@ webhooks: required: - old_issue - old_repository - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -160762,8 +161796,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -160889,8 +161923,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -160970,9 +162004,9 @@ webhooks: type: string enum: - pinned - enterprise: *766 - installation: *767 - issue: &793 + enterprise: *767 + installation: *768 + issue: &794 title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. @@ -161777,8 +162811,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -161900,8 +162934,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -161980,8 +163014,8 @@ webhooks: type: string enum: - reopened - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -162814,8 +163848,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -162916,8 +163950,8 @@ webhooks: user_view_type: type: string type: *246 - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -163805,8 +164839,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -164419,11 +165453,11 @@ webhooks: required: - new_issue - new_repository - enterprise: *766 - installation: *767 - issue: *793 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *794 + organization: *769 + repository: *770 sender: *4 required: - action @@ -164503,12 +165537,12 @@ webhooks: type: string enum: - typed - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 type: *246 - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -164589,7 +165623,7 @@ webhooks: type: string enum: - unassigned - assignee: &817 + assignee: &818 title: User type: - object @@ -164661,11 +165695,11 @@ webhooks: required: - login - id - enterprise: *766 - installation: *767 - issue: *791 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *792 + organization: *769 + repository: *770 sender: *4 required: - action @@ -164744,12 +165778,12 @@ webhooks: type: string enum: - unlabeled - enterprise: *766 - installation: *767 - issue: *791 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *792 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -164829,8 +165863,8 @@ webhooks: type: string enum: - unlocked - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -165663,8 +166697,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -165764,8 +166798,8 @@ webhooks: format: uri user_view_type: type: string - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165845,11 +166879,11 @@ webhooks: type: string enum: - unpinned - enterprise: *766 - installation: *767 - issue: *793 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *794 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165928,12 +166962,12 @@ webhooks: type: string enum: - untyped - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 type: *246 - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -166013,11 +167047,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -166095,11 +167129,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -166209,11 +167243,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -166295,9 +167329,9 @@ webhooks: - cancelled effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: &794 + enterprise: *767 + installation: *768 + marketplace_purchase: &795 title: Marketplace Purchase type: object required: @@ -166385,8 +167419,8 @@ webhooks: type: integer unit_count: type: integer - organization: *768 - previous_marketplace_purchase: &795 + organization: *769 + previous_marketplace_purchase: &796 title: Marketplace Purchase type: object properties: @@ -166470,7 +167504,7 @@ webhooks: - on_free_trial - free_trial_ends_on - plan - repository: *769 + repository: *770 sender: *4 required: - action @@ -166550,10 +167584,10 @@ webhooks: - changed effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: *794 - organization: *768 + enterprise: *767 + installation: *768 + marketplace_purchase: *795 + organization: *769 previous_marketplace_purchase: title: Marketplace Purchase type: object @@ -166641,7 +167675,7 @@ webhooks: - on_free_trial - free_trial_ends_on - plan - repository: *769 + repository: *770 sender: *4 required: - action @@ -166723,10 +167757,10 @@ webhooks: - pending_change effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: *794 - organization: *768 + enterprise: *767 + installation: *768 + marketplace_purchase: *795 + organization: *769 previous_marketplace_purchase: title: Marketplace Purchase type: object @@ -166812,7 +167846,7 @@ webhooks: - on_free_trial - free_trial_ends_on - plan - repository: *769 + repository: *770 sender: *4 required: - action @@ -166893,8 +167927,8 @@ webhooks: - pending_change_cancelled effective_date: type: string - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 marketplace_purchase: title: Marketplace Purchase type: object @@ -166980,9 +168014,9 @@ webhooks: type: integer unit_count: type: integer - organization: *768 - previous_marketplace_purchase: *795 - repository: *769 + organization: *769 + previous_marketplace_purchase: *796 + repository: *770 sender: *4 required: - action @@ -167062,12 +168096,12 @@ webhooks: - purchased effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: *794 - organization: *768 - previous_marketplace_purchase: *795 - repository: *769 + enterprise: *767 + installation: *768 + marketplace_purchase: *795 + organization: *769 + previous_marketplace_purchase: *796 + repository: *770 sender: *4 required: - action @@ -167169,11 +168203,11 @@ webhooks: type: string required: - to - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 sender: *4 required: - action @@ -167275,11 +168309,11 @@ webhooks: type: - string - 'null' - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 sender: *4 required: - action @@ -167358,11 +168392,11 @@ webhooks: type: string enum: - removed - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 sender: *4 required: - action @@ -167440,11 +168474,11 @@ webhooks: type: string enum: - added - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 scope: description: The scope of the membership. Currently, can only be `team`. @@ -167522,7 +168556,7 @@ webhooks: required: - login - id - team: &796 + team: &797 title: Team description: Groups of organization members that gives permissions on specified repositories. @@ -167752,11 +168786,11 @@ webhooks: type: string enum: - removed - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 scope: description: The scope of the membership. Currently, can only be `team`. @@ -167835,7 +168869,7 @@ webhooks: required: - login - id - team: *796 + team: *797 required: - action - scope @@ -167917,8 +168951,8 @@ webhooks: type: string enum: - checks_requested - installation: *767 - merge_group: &797 + installation: *768 + merge_group: &798 type: object title: Merge Group description: A group of pull requests that the merge queue has grouped @@ -167944,8 +168978,8 @@ webhooks: - base_sha - base_ref - head_commit - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168031,10 +169065,10 @@ webhooks: - merged - invalidated - dequeued - installation: *767 - merge_group: *797 - organization: *768 - repository: *769 + installation: *768 + merge_group: *798 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168107,7 +169141,7 @@ webhooks: type: string enum: - deleted - enterprise: *766 + enterprise: *767 hook: description: 'The deleted webhook. This will contain different keys based on the type of webhook it is: repository, organization, @@ -168216,12 +169250,12 @@ webhooks: hook_id: description: The id of the modified webhook. type: integer - installation: *767 - organization: *768 + installation: *768 + organization: *769 repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -168301,11 +169335,11 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 - milestone: *792 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168384,9 +169418,9 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - milestone: &798 + enterprise: *767 + installation: *768 + milestone: &799 title: Milestone description: A collection of related issues and pull requests. type: object @@ -168528,8 +169562,8 @@ webhooks: - updated_at - due_on - closed_at - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168608,11 +169642,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - milestone: *792 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168722,11 +169756,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - milestone: *792 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168806,11 +169840,11 @@ webhooks: type: string enum: - opened - enterprise: *766 - installation: *767 - milestone: *798 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *799 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168889,11 +169923,11 @@ webhooks: type: string enum: - blocked - blocked_user: *786 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + blocked_user: *787 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168972,11 +170006,11 @@ webhooks: type: string enum: - unblocked - blocked_user: *786 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + blocked_user: *787 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169055,9 +170089,9 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - membership: &799 + enterprise: *767 + installation: *768 + membership: &800 title: Membership description: The membership between the user and the organization. Not present when the action is `member_invited`. @@ -169167,8 +170201,8 @@ webhooks: - role - organization_url - user - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169246,11 +170280,11 @@ webhooks: type: string enum: - member_added - enterprise: *766 - installation: *767 - membership: *799 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + membership: *800 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169329,8 +170363,8 @@ webhooks: type: string enum: - member_invited - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 invitation: description: The invitation for the user or email if the action is `member_invited`. @@ -169452,10 +170486,10 @@ webhooks: - inviter - team_count - invitation_teams_url - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 - user: *786 + user: *787 required: - action - invitation @@ -169533,11 +170567,11 @@ webhooks: type: string enum: - member_removed - enterprise: *766 - installation: *767 - membership: *799 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + membership: *800 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169624,11 +170658,11 @@ webhooks: properties: from: type: string - enterprise: *766 - installation: *767 - membership: *799 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + membership: *800 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169705,9 +170739,9 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 package: description: Information about the package. type: object @@ -170230,7 +171264,7 @@ webhooks: - published_at rubygems_metadata: type: array - items: &800 + items: &801 title: Ruby Gems metadata type: object properties: @@ -170327,7 +171361,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -170403,9 +171437,9 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 package: description: Information about the package. type: object @@ -170767,7 +171801,7 @@ webhooks: - published_at rubygems_metadata: type: array - items: *800 + items: *801 source_url: type: string format: uri @@ -170838,7 +171872,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -171018,12 +172052,12 @@ webhooks: - duration - created_at - updated_at - enterprise: *766 + enterprise: *767 id: type: integer - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - id @@ -171100,7 +172134,7 @@ webhooks: type: string enum: - approved - personal_access_token_request: &801 + personal_access_token_request: &802 title: Personal Access Token Request description: Details of a Personal Access Token Request. type: object @@ -171250,10 +172284,10 @@ webhooks: - token_expired - token_expires_at - token_last_used_at - enterprise: *766 - organization: *768 + enterprise: *767 + organization: *769 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -171330,11 +172364,11 @@ webhooks: type: string enum: - cancelled - personal_access_token_request: *801 - enterprise: *766 - organization: *768 + personal_access_token_request: *802 + enterprise: *767 + organization: *769 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -171410,11 +172444,11 @@ webhooks: type: string enum: - created - personal_access_token_request: *801 - enterprise: *766 - organization: *768 + personal_access_token_request: *802 + enterprise: *767 + organization: *769 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -171489,11 +172523,11 @@ webhooks: type: string enum: - denied - personal_access_token_request: *801 - organization: *768 - enterprise: *766 + personal_access_token_request: *802 + organization: *769 + enterprise: *767 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -171598,7 +172632,7 @@ webhooks: id: description: Unique identifier of the webhook. type: integer - last_response: *802 + last_response: *803 name: description: The type of webhook. The only valid value is 'web'. type: string @@ -171630,8 +172664,8 @@ webhooks: hook_id: description: The ID of the webhook that triggered the ping. type: integer - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 zen: description: Random string of GitHub zen. @@ -171876,10 +172910,10 @@ webhooks: - from required: - note - enterprise: *766 - installation: *767 - organization: *768 - project_card: &803 + enterprise: *767 + installation: *768 + organization: *769 + project_card: &804 title: Project Card type: object properties: @@ -172002,7 +173036,7 @@ webhooks: - creator - created_at - updated_at - repository: *769 + repository: *770 sender: *4 required: - action @@ -172083,11 +173117,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - project_card: *803 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_card: *804 + repository: *770 sender: *4 required: - action @@ -172167,9 +173201,9 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 project_card: title: Project Card type: object @@ -172299,7 +173333,7 @@ webhooks: repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -172393,11 +173427,11 @@ webhooks: - from required: - note - enterprise: *766 - installation: *767 - organization: *768 - project_card: *803 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_card: *804 + repository: *770 sender: *4 required: - action @@ -172491,9 +173525,9 @@ webhooks: - from required: - column_id - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 project_card: allOf: - title: Project Card @@ -172690,7 +173724,7 @@ webhooks: type: string required: - after_id - repository: *769 + repository: *770 sender: *4 required: - action @@ -172770,10 +173804,10 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 - organization: *768 - project: &805 + enterprise: *767 + installation: *768 + organization: *769 + project: &806 title: Project type: object properties: @@ -172900,7 +173934,7 @@ webhooks: - creator - created_at - updated_at - repository: *769 + repository: *770 sender: *4 required: - action @@ -172980,10 +174014,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - project_column: &804 + enterprise: *767 + installation: *768 + organization: *769 + project_column: &805 title: Project Column type: object properties: @@ -173023,7 +174057,7 @@ webhooks: - name - created_at - updated_at - repository: *769 + repository: *770 sender: *4 required: - action @@ -173102,14 +174136,14 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - project_column: *804 + enterprise: *767 + installation: *768 + organization: *769 + project_column: *805 repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -173198,11 +174232,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - project_column: *804 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_column: *805 + repository: *770 sender: *4 required: - action @@ -173282,11 +174316,11 @@ webhooks: type: string enum: - moved - enterprise: *766 - installation: *767 - organization: *768 - project_column: *804 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_column: *805 + repository: *770 sender: *4 required: - action @@ -173366,11 +174400,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - project: *805 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 + repository: *770 sender: *4 required: - action @@ -173450,14 +174484,14 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - project: *805 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -173558,11 +174592,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - project: *805 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 + repository: *770 sender: *4 required: - action @@ -173641,11 +174675,11 @@ webhooks: type: string enum: - reopened - enterprise: *766 - installation: *767 - organization: *768 - project: *805 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 + repository: *770 sender: *4 required: - action @@ -173726,8 +174760,8 @@ webhooks: type: string enum: - closed - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -173809,8 +174843,8 @@ webhooks: type: string enum: - created - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -173892,8 +174926,8 @@ webhooks: type: string enum: - deleted - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -174015,8 +175049,8 @@ webhooks: type: string to: type: string - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -174100,7 +175134,7 @@ webhooks: type: string enum: - archived - changes: &809 + changes: &810 type: object properties: archived_at: @@ -174116,9 +175150,9 @@ webhooks: - string - 'null' format: date-time - installation: *767 - organization: *768 - projects_v2_item: &806 + installation: *768 + organization: *769 + projects_v2_item: &807 title: Projects v2 Item description: An item belonging to a project type: object @@ -174258,9 +175292,9 @@ webhooks: - 'null' to: type: string - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -174342,9 +175376,9 @@ webhooks: type: string enum: - created - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -174425,9 +175459,9 @@ webhooks: type: string enum: - deleted - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -174532,7 +175566,7 @@ webhooks: oneOf: - type: string - type: integer - - &807 + - &808 title: Projects v2 Single Select Option description: An option for a single select field type: object @@ -174556,7 +175590,7 @@ webhooks: required: - id - name - - &808 + - &809 title: Projects v2 Iteration Setting description: An iteration setting for an iteration field type: object @@ -174596,8 +175630,8 @@ webhooks: oneOf: - type: string - type: integer - - *807 - *808 + - *809 type: - 'null' - string @@ -174620,9 +175654,9 @@ webhooks: - 'null' required: - body - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -174719,9 +175753,9 @@ webhooks: type: - string - 'null' - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -174804,10 +175838,10 @@ webhooks: type: string enum: - restored - changes: *809 - installation: *767 - organization: *768 - projects_v2_item: *806 + changes: *810 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -174889,8 +175923,8 @@ webhooks: type: string enum: - reopened - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -174972,9 +176006,9 @@ webhooks: type: string enum: - created - installation: *767 - organization: *768 - projects_v2_status_update: *810 + installation: *768 + organization: *769 + projects_v2_status_update: *811 sender: *4 required: - action @@ -175055,9 +176089,9 @@ webhooks: type: string enum: - deleted - installation: *767 - organization: *768 - projects_v2_status_update: *810 + installation: *768 + organization: *769 + projects_v2_status_update: *811 sender: *4 required: - action @@ -175203,9 +176237,9 @@ webhooks: - string - 'null' format: date - installation: *767 - organization: *768 - projects_v2_status_update: *810 + installation: *768 + organization: *769 + projects_v2_status_update: *811 sender: *4 required: - action @@ -175276,10 +176310,10 @@ webhooks: title: public event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - repository @@ -175356,13 +176390,13 @@ webhooks: type: string enum: - assigned - assignee: *786 - enterprise: *766 - installation: *767 - number: &811 + assignee: *787 + enterprise: *767 + installation: *768 + number: &812 description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -177734,7 +178768,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -177816,11 +178850,11 @@ webhooks: type: string enum: - auto_merge_disabled - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -180185,7 +181219,7 @@ webhooks: - draft reason: type: string - repository: *769 + repository: *770 sender: *4 required: - action @@ -180267,11 +181301,11 @@ webhooks: type: string enum: - auto_merge_enabled - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -182636,7 +183670,7 @@ webhooks: - draft reason: type: string - repository: *769 + repository: *770 sender: *4 required: - action @@ -182718,11 +183752,11 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: &812 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: &813 allOf: - *602 - type: object @@ -182786,7 +183820,7 @@ webhooks: Please use `squash_merge_commit_title` instead.** type: boolean default: false - repository: *769 + repository: *770 sender: *4 required: - action @@ -182867,12 +183901,12 @@ webhooks: type: string enum: - converted_to_draft - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -182952,11 +183986,11 @@ webhooks: type: string enum: - demilestoned - enterprise: *766 + enterprise: *767 milestone: *282 - number: *811 - organization: *768 - pull_request: &813 + number: *812 + organization: *769 + pull_request: &814 title: Pull Request type: object properties: @@ -185306,7 +186340,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -185385,11 +186419,11 @@ webhooks: type: string enum: - dequeued - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -187758,7 +188792,7 @@ webhooks: - BRANCH_PROTECTIONS - GIT_TREE_INVALID - INVALID_MERGE_COMMIT - repository: *769 + repository: *770 sender: *4 required: - action @@ -187882,12 +188916,12 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -187967,11 +189001,11 @@ webhooks: type: string enum: - enqueued - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -190325,7 +191359,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -190405,11 +191439,11 @@ webhooks: type: string enum: - labeled - enterprise: *766 - installation: *767 - label: *785 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + label: *786 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -192780,7 +193814,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -192861,10 +193895,10 @@ webhooks: type: string enum: - locked - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -195233,7 +196267,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -195313,12 +196347,12 @@ webhooks: type: string enum: - milestoned - enterprise: *766 + enterprise: *767 milestone: *282 - number: *811 - organization: *768 - pull_request: *813 - repository: *769 + number: *812 + organization: *769 + pull_request: *814 + repository: *770 sender: *4 required: - action @@ -195397,12 +196431,12 @@ webhooks: type: string enum: - opened - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -195483,12 +196517,12 @@ webhooks: type: string enum: - ready_for_review - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -195568,12 +196602,12 @@ webhooks: type: string enum: - reopened - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -195948,9 +196982,9 @@ webhooks: - start_side - side - reactions - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: type: object properties: @@ -198203,7 +199237,7 @@ webhooks: - _links - author_association - active_lock_reason - repository: *769 + repository: *770 sender: *4 required: - action @@ -198283,7 +199317,7 @@ webhooks: type: string enum: - deleted - comment: &815 + comment: &816 title: Pull Request Review Comment description: The [comment](https://docs.github.com/rest/pulls/comments#get-a-review-comment-for-a-pull-request) itself. @@ -198576,9 +199610,9 @@ webhooks: - start_side - side - reactions - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: type: object properties: @@ -200819,7 +201853,7 @@ webhooks: - _links - author_association - active_lock_reason - repository: *769 + repository: *770 sender: *4 required: - action @@ -200899,11 +201933,11 @@ webhooks: type: string enum: - edited - changes: *814 - comment: *815 - enterprise: *766 - installation: *767 - organization: *768 + changes: *815 + comment: *816 + enterprise: *767 + installation: *768 + organization: *769 pull_request: type: object properties: @@ -203147,7 +204181,7 @@ webhooks: - _links - author_association - active_lock_reason - repository: *769 + repository: *770 sender: *4 required: - action @@ -203228,9 +204262,9 @@ webhooks: type: string enum: - dismissed - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -205486,7 +206520,7 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 + repository: *770 review: description: The review that was affected. type: object @@ -205737,9 +206771,9 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -207853,8 +208887,8 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 - review: &816 + repository: *770 + review: &817 description: The review that was affected. type: object properties: @@ -208092,12 +209126,12 @@ webhooks: type: string enum: - review_request_removed - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -210467,7 +211501,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_reviewer: title: User type: @@ -210553,12 +211587,12 @@ webhooks: type: string enum: - review_request_removed - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -212935,7 +213969,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_team: title: Team description: Groups of organization members that gives permissions @@ -213130,12 +214164,12 @@ webhooks: type: string enum: - review_requested - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -215507,7 +216541,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_reviewer: title: User type: @@ -215594,12 +216628,12 @@ webhooks: type: string enum: - review_requested - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -217962,7 +218996,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_team: title: Team description: Groups of organization members that gives permissions @@ -218146,9 +219180,9 @@ webhooks: type: string enum: - submitted - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -220407,8 +221441,8 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 - review: *816 + repository: *770 + review: *817 sender: *4 required: - action @@ -220488,9 +221522,9 @@ webhooks: type: string enum: - resolved - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -222644,7 +223678,7 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 + repository: *770 sender: *4 thread: type: object @@ -223041,9 +224075,9 @@ webhooks: type: string enum: - unresolved - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -225180,7 +226214,7 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 + repository: *770 sender: *4 thread: type: object @@ -225573,11 +226607,11 @@ webhooks: type: string enum: - stacked - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 stack: *599 - number: *811 - organization: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -227948,7 +228982,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -228034,10 +229068,10 @@ webhooks: type: string before: type: string - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -230395,7 +231429,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -230477,11 +231511,11 @@ webhooks: type: string enum: - unassigned - assignee: *817 - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + assignee: *818 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -232854,7 +233888,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -232933,11 +233967,11 @@ webhooks: type: string enum: - unlabeled - enterprise: *766 - installation: *767 - label: *785 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + label: *786 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -235299,7 +236333,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -235380,10 +236414,10 @@ webhooks: type: string enum: - unlocked - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -237735,7 +238769,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -237938,7 +238972,7 @@ webhooks: deleted: description: Whether this push deleted the `ref`. type: boolean - enterprise: *766 + enterprise: *767 forced: description: Whether this push was a force push of the `ref`. type: boolean @@ -238033,8 +239067,8 @@ webhooks: - url - author - committer - installation: *767 - organization: *768 + installation: *768 + organization: *769 pusher: title: Committer description: Metaproperties for Git author/committer information. @@ -238633,9 +239667,9 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 registry_package: type: object properties: @@ -239112,7 +240146,7 @@ webhooks: type: string rubygems_metadata: type: array - items: *800 + items: *801 summary: type: string tag_name: @@ -239168,7 +240202,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -239246,9 +240280,9 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 registry_package: type: object properties: @@ -239560,7 +240594,7 @@ webhooks: - published_at rubygems_metadata: type: array - items: *800 + items: *801 summary: type: string tag_name: @@ -239610,7 +240644,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -239687,10 +240721,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - release: &818 + enterprise: *767 + installation: *768 + organization: *769 + release: &819 title: Release description: The [release](https://docs.github.com/rest/releases/releases/#get-a-release) object. @@ -240021,7 +241055,7 @@ webhooks: - updated_at - zipball_url - body - repository: *769 + repository: *770 sender: *4 required: - action @@ -240098,11 +241132,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - release: *818 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *819 + repository: *770 sender: *4 required: - action @@ -240219,11 +241253,11 @@ webhooks: type: boolean required: - to - enterprise: *766 - installation: *767 - organization: *768 - release: *818 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *819 + repository: *770 sender: *4 required: - action @@ -240301,9 +241335,9 @@ webhooks: type: string enum: - prereleased - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 release: title: Release description: The [release](https://docs.github.com/rest/releases/releases/#get-a-release) @@ -240639,7 +241673,7 @@ webhooks: - string - 'null' format: uri - repository: *769 + repository: *770 sender: *4 required: - action @@ -240715,10 +241749,10 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 - release: &819 + enterprise: *767 + installation: *768 + organization: *769 + release: &820 title: Release description: The [release](https://docs.github.com/rest/releases/releases/#get-a-release) object. @@ -241051,7 +242085,7 @@ webhooks: - string - 'null' format: uri - repository: *769 + repository: *770 sender: *4 required: - action @@ -241127,11 +242161,11 @@ webhooks: type: string enum: - released - enterprise: *766 - installation: *767 - organization: *768 - release: *818 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *819 + repository: *770 sender: *4 required: - action @@ -241207,11 +242241,11 @@ webhooks: type: string enum: - unpublished - enterprise: *766 - installation: *767 - organization: *768 - release: *819 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *820 + repository: *770 sender: *4 required: - action @@ -241287,10 +242321,10 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_advisory: *687 sender: *4 required: @@ -241367,10 +242401,10 @@ webhooks: type: string enum: - reported - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_advisory: *687 sender: *4 required: @@ -241447,10 +242481,10 @@ webhooks: type: string enum: - archived - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -241527,10 +242561,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -241608,10 +242642,10 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -241696,10 +242730,10 @@ webhooks: additionalProperties: true description: The `client_payload` that was specified in the `POST /repos/{owner}/{repo}/dispatches` request body. - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -241814,10 +242848,10 @@ webhooks: - 'null' items: type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -241889,10 +242923,10 @@ webhooks: title: repository_import event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 status: type: string @@ -241973,10 +243007,10 @@ webhooks: type: string enum: - privatized - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242053,10 +243087,10 @@ webhooks: type: string enum: - publicized - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242150,10 +243184,10 @@ webhooks: - name required: - repository - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242233,10 +243267,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_ruleset: *324 sender: *4 required: @@ -242315,10 +243349,10 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_ruleset: *324 sender: *4 required: @@ -242397,10 +243431,10 @@ webhooks: type: string enum: - edited - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_ruleset: *324 changes: type: object @@ -242708,10 +243742,10 @@ webhooks: - from required: - owner - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242789,10 +243823,10 @@ webhooks: type: string enum: - unarchived - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242870,7 +243904,7 @@ webhooks: type: string enum: - create - alert: &820 + alert: &821 title: Repository Vulnerability Alert Alert description: The security alert of the vulnerable dependency. type: object @@ -242995,10 +244029,10 @@ webhooks: enum: - auto_dismissed - open - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243208,10 +244242,10 @@ webhooks: type: string enum: - dismissed - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243289,11 +244323,11 @@ webhooks: type: string enum: - reopen - alert: *820 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *821 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243495,10 +244529,10 @@ webhooks: enum: - fixed - open - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243576,7 +244610,7 @@ webhooks: type: string enum: - assigned - alert: &822 + alert: &823 type: object properties: number: *181 @@ -243723,12 +244757,12 @@ webhooks: anyOf: - type: 'null' - *4 - metadata: *821 + metadata: *822 assignee: *4 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243806,11 +244840,11 @@ webhooks: type: string enum: - created - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243891,11 +244925,11 @@ webhooks: type: string enum: - created - alert: *822 - installation: *767 - location: *823 - organization: *768 - repository: *769 + alert: *823 + installation: *768 + location: *824 + organization: *769 + repository: *770 sender: *4 required: - location @@ -244133,11 +245167,11 @@ webhooks: type: string enum: - metadata_created - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244214,11 +245248,11 @@ webhooks: type: string enum: - metadata_removed - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244295,11 +245329,11 @@ webhooks: type: string enum: - publicly_leaked - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244377,11 +245411,11 @@ webhooks: type: string enum: - reopened - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244459,11 +245493,11 @@ webhooks: type: string enum: - resolved - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244541,12 +245575,12 @@ webhooks: type: string enum: - unassigned - alert: *822 + alert: *823 assignee: *4 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244624,11 +245658,11 @@ webhooks: type: string enum: - validated - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244758,10 +245792,10 @@ webhooks: - organization - enterprise - - repository: *769 - enterprise: *766 - installation: *767 - organization: *768 + repository: *770 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -244839,11 +245873,11 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - security_advisory: &824 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + security_advisory: &825 description: The details of the security advisory, including summary, description, and severity. type: object @@ -245029,11 +246063,11 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - security_advisory: *824 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + security_advisory: *825 sender: *4 required: - action @@ -245106,10 +246140,10 @@ webhooks: type: string enum: - withdrawn - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 security_advisory: description: The details of the security advisory, including summary, description, and severity. @@ -245296,9 +246330,9 @@ webhooks: type: object properties: security_and_analysis: *297 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: *343 sender: *4 required: @@ -245377,12 +246411,12 @@ webhooks: type: string enum: - cancelled - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: &825 + sponsorship: &826 type: object properties: created_at: @@ -245687,12 +246721,12 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - sponsorship @@ -245780,12 +246814,12 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - changes @@ -245862,17 +246896,17 @@ webhooks: type: string enum: - pending_cancellation - effective_date: &826 + effective_date: &827 description: The `pending_cancellation` and `pending_tier_change` event types will include the date the cancellation or tier change will take effect. type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - sponsorship @@ -245946,7 +246980,7 @@ webhooks: type: string enum: - pending_tier_change - changes: &827 + changes: &828 type: object properties: tier: @@ -245990,13 +247024,13 @@ webhooks: - from required: - tier - effective_date: *826 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + effective_date: *827 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - changes @@ -246073,13 +247107,13 @@ webhooks: type: string enum: - tier_changed - changes: *827 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + changes: *828 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - changes @@ -246153,10 +247187,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 starred_at: description: 'The time the star was created. This is a timestamp @@ -246240,10 +247274,10 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 starred_at: description: 'The time the star was created. This is a timestamp @@ -246677,15 +247711,15 @@ webhooks: type: - string - 'null' - enterprise: *766 + enterprise: *767 id: description: The unique identifier of the status. type: integer - installation: *767 + installation: *768 name: type: string - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 sha: description: The Commit SHA. @@ -246801,9 +247835,9 @@ webhooks: description: The ID of the sub-issue. type: number sub_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -246892,9 +247926,9 @@ webhooks: description: The ID of the sub-issue. type: number sub_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -246983,9 +248017,9 @@ webhooks: description: The ID of the parent issue. type: number parent_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -247074,9 +248108,9 @@ webhooks: description: The ID of the parent issue. type: number parent_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -247152,12 +248186,12 @@ webhooks: title: team_add event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - team: &828 + team: &829 title: Team description: Groups of organization members that gives permissions on specified repositories. @@ -247387,9 +248421,9 @@ webhooks: type: string enum: - added_to_repository - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -247859,7 +248893,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -247935,9 +248969,9 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -248407,7 +249441,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -248484,9 +249518,9 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -248956,7 +249990,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -249100,9 +250134,9 @@ webhooks: - from required: - permissions - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -249572,7 +250606,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - changes @@ -249650,9 +250684,9 @@ webhooks: type: string enum: - removed_from_repository - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -250122,7 +251156,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -250198,10 +251232,10 @@ webhooks: type: string enum: - started - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -250274,17 +251308,17 @@ webhooks: title: workflow_dispatch event type: object properties: - enterprise: *766 + enterprise: *767 inputs: type: - object - 'null' additionalProperties: true - installation: *767 - organization: *768 + installation: *768 + organization: *769 ref: type: string - repository: *769 + repository: *770 sender: *4 workflow: type: string @@ -250366,10 +251400,10 @@ webhooks: type: string enum: - completed - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 workflow_job: allOf: @@ -250704,10 +251738,10 @@ webhooks: type: string enum: - in_progress - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 workflow_job: allOf: @@ -251068,10 +252102,10 @@ webhooks: type: string enum: - queued - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 workflow_job: type: object @@ -251296,10 +252330,10 @@ webhooks: type: string enum: - waiting - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 workflow_job: type: object @@ -251526,12 +252560,12 @@ webhooks: type: string enum: - completed - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: *781 + workflow: *782 workflow_run: title: Workflow Run type: object @@ -252550,12 +253584,12 @@ webhooks: type: string enum: - in_progress - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: *781 + workflow: *782 workflow_run: title: Workflow Run type: object @@ -253559,12 +254593,12 @@ webhooks: type: string enum: - requested - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: *781 + workflow: *782 workflow_run: title: Workflow Run type: object diff --git a/descriptions-next/api.github.com/dereferenced/api.github.com.2026-03-10.deref.json b/descriptions-next/api.github.com/dereferenced/api.github.com.2026-03-10.deref.json index ee41d55ebc..7395f330f2 100644 --- a/descriptions-next/api.github.com/dereferenced/api.github.com.2026-03-10.deref.json +++ b/descriptions-next/api.github.com/dereferenced/api.github.com.2026-03-10.deref.json @@ -352963,960 +352963,20 @@ "url" ] } - } - }, - "required": [ - "number", - "created_at", - "url", - "html_url", - "instances_url", - "state", - "dismissed_by", - "dismissed_at", - "dismissed_reason", - "rule", - "tool", - "most_recent_instance" - ] - }, - "examples": { - "default": { - "value": { - "number": 42, - "created_at": "2020-06-19T11:21:34Z", - "url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42", - "html_url": "https://github.com/octocat/hello-world/code-scanning/42", - "state": "dismissed", - "fixed_at": null, - "dismissed_by": { - "login": "octocat", - "id": 54933897, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "dismissed_at": "2020-02-14T12:29:18Z", - "dismissed_reason": "false positive", - "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", - "rule": { - "id": "js/zipslip", - "severity": "error", - "security_severity_level": "high", - "description": "Arbitrary file write during zip extraction (\"Zip Slip\")", - "name": "js/zipslip", - "full_description": "Extracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten.", - "tags": [ - "security", - "external/cwe/cwe-022" - ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", - "help_uri": "https://codeql.github.com/" - }, - "tool": { - "name": "CodeQL", - "guid": null, - "version": "2.4.0" - }, - "most_recent_instance": { - "ref": "refs/heads/main", - "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", - "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", - "environment": "{}", - "state": "dismissed", - "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", - "message": { - "text": "This path depends on a user-provided value." - }, - "location": { - "path": "spec-main/api-session-spec.ts", - "start_line": 917, - "end_line": 917, - "start_column": 7, - "end_column": 18 - }, - "classifications": [ - "test" - ] - }, - "instances_url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances" - } - } - } - } - } - }, - "304": { - "description": "Not modified" - }, - "403": { - "description": "Response if GitHub Advanced Security is not enabled for this repository", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "code-scanning", - "subcategory": "code-scanning" - } - }, - "patch": { - "summary": "Update a code scanning alert", - "description": "Updates the status of a single code scanning alert.\nOAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.", - "operationId": "code-scanning/update-alert", - "tags": [ - "code-scanning" - ], - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/code-scanning/code-scanning#update-a-code-scanning-alert" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alert_number", - "in": "path", - "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", - "required": true, - "schema": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "state": { - "description": "Sets the state of the code scanning alert. You must provide `dismissed_reason` when you set the state to `dismissed`.", - "type": "string", - "enum": [ - "open", - "dismissed" - ] - }, - "dismissed_reason": { - "type": [ - "string", - "null" - ], - "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", - "enum": [ - "false positive", - "won't fix", - "used in tests", - null - ] - }, - "dismissed_comment": { - "type": [ - "string", - "null" - ], - "description": "The dismissal comment associated with the dismissal of the alert.", - "maxLength": 280 - }, - "create_request": { - "type": "boolean", - "description": "If `true`, attempt to create an alert dismissal request." - }, - "assignees": { - "description": "The list of users to assign to the code scanning alert. An empty array unassigns all previous assignees from the alert.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "anyOf": [ - { - "required": [ - "state" - ] - }, - { - "required": [ - "assignees" - ] - } - ] - }, - "examples": { - "default": { - "value": { - "state": "dismissed", - "dismissed_reason": "false positive", - "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", - "create_request": true - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "number": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - }, - "created_at": { - "type": "string", - "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "updated_at": { - "type": "string", - "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "url": { - "type": "string", - "description": "The REST API URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "html_url": { - "type": "string", - "description": "The GitHub URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "instances_url": { - "type": "string", - "description": "The REST API URL for fetching the list of instances for an alert.", - "format": "uri", - "readOnly": true - }, - "state": { - "type": [ - "string", - "null" - ], - "description": "State of a code scanning alert.", - "enum": [ - "open", - "dismissed", - "fixed", - null - ] - }, - "fixed_at": { - "type": [ - "string", - "null" - ], - "description": "The time that the alert was no longer detected and was considered fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "dismissed_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "dismissed_at": { - "type": [ - "string", - "null" - ], - "description": "The time that the alert was dismissed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "dismissed_reason": { - "type": [ - "string", - "null" - ], - "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", - "enum": [ - "false positive", - "won't fix", - "used in tests", - null - ] - }, - "dismissed_comment": { - "type": [ - "string", - "null" - ], - "description": "The dismissal comment associated with the dismissal of the alert.", - "maxLength": 280 - }, - "rule": { - "type": "object", - "properties": { - "id": { - "type": [ - "string", - "null" - ], - "description": "A unique identifier for the rule used to detect the alert." - }, - "name": { - "type": "string", - "description": "The name of the rule used to detect the alert." - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the alert.", - "enum": [ - "none", - "note", - "warning", - "error", - null - ] - }, - "security_severity_level": { - "type": [ - "string", - "null" - ], - "description": "The security severity of the alert.", - "enum": [ - "low", - "medium", - "high", - "critical", - null - ] - }, - "description": { - "type": "string", - "description": "A short description of the rule used to detect the alert." - }, - "full_description": { - "type": "string", - "description": "A description of the rule used to detect the alert." - }, - "tags": { - "type": [ - "array", - "null" - ], - "description": "A set of tags applicable for the rule.", - "items": { - "type": "string" - } - }, - "help": { - "type": [ - "string", - "null" - ], - "description": "Detailed documentation for the rule as GitHub Flavored Markdown." - }, - "help_uri": { - "type": [ - "string", - "null" - ], - "description": "A link to the documentation for the rule used to detect the alert." - } - } - }, - "tool": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the tool used to generate the code scanning analysis." - }, - "version": { - "type": [ - "string", - "null" - ], - "description": "The version of the tool used to generate the code scanning analysis." - }, - "guid": { - "type": [ - "string", - "null" - ], - "description": "The GUID of the tool used to generate the code scanning analysis, if provided in the uploaded SARIF data." - } - } - }, - "most_recent_instance": { - "type": "object", - "properties": { - "ref": { - "type": "string", - "description": "The Git reference, formatted as `refs/pull//merge`, `refs/pull//head`,\n`refs/heads/` or simply ``." - }, - "analysis_key": { - "type": "string", - "description": "Identifies the configuration under which the analysis was executed. For example, in GitHub Actions this includes the workflow filename and job name." - }, - "environment": { - "type": "string", - "description": "Identifies the variable values associated with the environment in which the analysis that generated this alert instance was performed, such as the language that was analyzed." - }, - "category": { - "type": "string", - "description": "Identifies the configuration under which the analysis was executed. Used to distinguish between multiple analyses for the same tool and commit, but performed on different languages or different parts of the code." - }, - "state": { - "type": [ - "string", - "null" - ], - "description": "State of a code scanning alert.", - "enum": [ - "open", - "dismissed", - "fixed", - null - ] - }, - "commit_sha": { - "type": "string" - }, - "message": { - "type": "object", - "properties": { - "text": { - "type": "string" - }, - "markdown": { - "type": "string", - "description": "The message text as GitHub-flavored Markdown, with placeholder links for related locations replaced by links to the relevant code. Only populated when related locations are available for the alert instance." - } - } - }, - "location": { - "type": "object", - "description": "Describe a region within a file for the alert.", - "properties": { - "path": { - "type": "string" - }, - "start_line": { - "type": "integer" - }, - "end_line": { - "type": "integer" - }, - "start_column": { - "type": "integer" - }, - "end_column": { - "type": "integer" - } - } - }, - "html_url": { - "type": "string" - }, - "classifications": { - "type": "array", - "description": "Classifications that have been applied to the file that triggered the alert.\nFor example identifying it as documentation, or a generated file.", - "items": { - "type": [ - "string", - "null" - ], - "description": "A classification of the file. For example to identify it as generated.", - "enum": [ - "source", - "generated", - "test", - "library", - null - ] - } - } - } - }, - "dismissal_approved_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] }, - "assignees": { + "linked_pull_requests": { + "description": "Pull requests linked to this alert.", "type": "array", "items": { - "title": "Simple User", - "description": "A GitHub user.", + "title": "Pull Request Simple", + "description": "Pull Request Simple", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { + "url": { "type": "string", + "format": "uri", "examples": [ - "octocat" + "https://api.github.com/repos/octocat/Hello-World/pulls/1347" ] }, "id": { @@ -353929,586 +352989,9584 @@ "node_id": { "type": "string", "examples": [ - "MDQ6VXNlcjE=" + "MDExOlB1bGxSZXF1ZXN0MQ==" ] }, - "avatar_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "https://github.com/octocat/Hello-World/pull/1347" ] }, - "url": { + "diff_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat" + "https://github.com/octocat/Hello-World/pull/1347.diff" ] }, - "html_url": { + "patch_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat" + "https://github.com/octocat/Hello-World/pull/1347.patch" ] }, - "followers_url": { + "issue_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/followers" + "https://api.github.com/repos/octocat/Hello-World/issues/1347" ] }, - "following_url": { + "commits_url": { "type": "string", + "format": "uri", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" ] }, - "gists_url": { + "review_comments_url": { "type": "string", + "format": "uri", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" ] }, - "starred_url": { + "review_comment_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" ] }, - "subscriptions_url": { + "comments_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" ] }, - "organizations_url": { + "statuses_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/orgs" + "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" ] }, - "repos_url": { - "type": "string", - "format": "uri", + "number": { + "type": "integer", "examples": [ - "https://api.github.com/users/octocat/repos" + 1347 ] }, - "events_url": { + "state": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "open" ] }, - "received_events_url": { - "type": "string", - "format": "uri", + "locked": { + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/received_events" + true ] }, - "type": { + "title": { "type": "string", "examples": [ - "User" + "new-feature" ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "type": [ + "string", + "null" + ], "examples": [ - "\"2020-07-09T00:17:55Z\"" + "Please pull these awesome changes" ] }, - "user_view_type": { + "labels": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "color": { + "type": "string" + }, + "default": { + "type": "boolean" + } + }, + "required": [ + "id", + "node_id", + "url", + "name", + "description", + "color", + "default" + ] + } + }, + "milestone": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Milestone", + "description": "A collection of related issues and pull requests.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/milestones/v1.0" + ] + }, + "labels_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1002604 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDk6TWlsZXN0b25lMTAwMjYwNA==" + ] + }, + "number": { + "description": "The number of the milestone.", + "type": "integer", + "examples": [ + 42 + ] + }, + "state": { + "description": "The state of the milestone.", + "type": "string", + "enum": [ + "open", + "closed" + ], + "default": "open", + "examples": [ + "open" + ] + }, + "title": { + "description": "The title of the milestone.", + "type": "string", + "examples": [ + "v1.0" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "Tracking milestone for version 1.0" + ] + }, + "creator": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "open_issues": { + "type": "integer", + "examples": [ + 4 + ] + }, + "closed_issues": { + "type": "integer", + "examples": [ + 8 + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-10T20:09:31Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2014-03-03T18:58:10Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2013-02-12T13:22:01Z" + ] + }, + "due_on": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2012-10-09T23:39:01Z" + ] + } + }, + "required": [ + "closed_issues", + "creator", + "description", + "due_on", + "closed_at", + "id", + "node_id", + "labels_url", + "html_url", + "number", + "open_issues", + "state", + "title", + "url", + "created_at", + "updated_at" + ] + } + ] + }, + "active_lock_reason": { + "type": [ + "string", + "null" + ], + "examples": [ + "too heated" + ] + }, + "created_at": { "type": "string", + "format": "date-time", "examples": [ - "public" + "2011-01-26T19:01:12Z" ] - } - }, - "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" - ] - } - } - }, - "required": [ - "number", - "created_at", - "url", - "html_url", - "instances_url", - "state", - "dismissed_by", - "dismissed_at", - "dismissed_reason", - "rule", - "tool", - "most_recent_instance" - ] - }, - "examples": { - "default": { - "value": { - "number": 42, - "created_at": "2020-08-25T21:28:36Z", - "url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42", - "html_url": "https://github.com/octocat/hello-world/code-scanning/42", - "state": "dismissed", - "fixed_at": null, - "dismissed_by": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "dismissed_at": "2020-09-02T22:34:56Z", - "dismissed_reason": "false positive", - "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", - "rule": { - "id": "js/zipslip", - "severity": "error", - "security_severity_level": "high", - "description": "Arbitrary file write during zip extraction (\"Zip Slip\")", - "name": "js/zipslip", - "full_description": "Extracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten.", - "tags": [ - "security", - "external/cwe/cwe-022" - ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", - "help_uri": "https://codeql.github.com/" - }, - "tool": { - "name": "CodeQL", - "guid": null, - "version": "2.4.0" - }, - "most_recent_instance": { - "ref": "refs/heads/main", - "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", - "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", - "environment": "{}", - "state": "dismissed", - "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", - "message": { - "text": "This path depends on a user-provided value." - }, - "location": { - "path": "spec-main/api-session-spec.ts", - "start_line": 917, - "end_line": 917, - "start_column": 7, - "end_column": 18 - }, - "classifications": [ - "test" - ] - }, - "instances_url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances" - } - } - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - }, - "application/scim+json": { - "schema": { - "title": "Scim Error", - "description": "Scim Error", - "type": "object", - "properties": { - "message": { - "type": [ - "string", - "null" - ] - }, - "documentation_url": { - "type": [ - "string", - "null" - ] - }, - "detail": { - "type": [ - "string", - "null" - ] - }, - "status": { - "type": "integer" - }, - "scimType": { - "type": [ - "string", - "null" - ] - }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - }, - "403": { - "description": "Response if the repository is archived or if GitHub Advanced Security is not enabled for this repository", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "enabledForGitHubApps": true, - "githubCloudOnly": false, - "category": "code-scanning", - "subcategory": "code-scanning" - } - } - }, - "/repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix": { - "get": { - "summary": "Get the status of an autofix for a code scanning alert", - "description": "Gets the status and description of an autofix for a code scanning alert on the repository's default branch.\n\nOAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.", - "tags": [ - "code-scanning" - ], - "operationId": "code-scanning/get-autofix", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/code-scanning/code-scanning#get-the-status-of-an-autofix-for-a-code-scanning-alert" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alert_number", - "in": "path", - "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", - "required": true, - "schema": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "status": { - "type": "string", - "description": "The status of an autofix.", - "enum": [ - "pending", - "error", - "success", - "outdated" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "description": "The description of an autofix." - }, - "started_at": { - "type": "string", - "description": "The start time of an autofix in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - } - }, - "required": [ - "status", - "description", - "started_at" - ] - }, - "examples": { - "default": { - "value": { - "status": "success", - "description": "This fixes an XSS vulnerability by escaping the user input.", - "started_at": "2024-02-14T12:29:18Z" - } - } - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - }, - "examples": { - "default": { - "value": { - "message": "The alert_number is not valid", - "documentation_url": "https://docs.github.com/rest/code-scanning/code-scanning#get-the-status-of-an-autofix-for-a-code-scanning-alert", - "status": "400" - } - } - } - } - } - }, - "403": { - "description": "Response if GitHub Advanced Security is not enabled for this repository", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_reviewers": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" + ], + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } + }, + "head": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "base": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "_links": { + "type": "object", + "properties": { + "comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "commits": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "statuses": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "issue": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comment": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "comments", + "commits", + "statuses", + "html", + "issue", + "review_comments", + "review_comment", + "self" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + }, + "auto_merge": { + "title": "Auto merge", + "description": "The status of auto merging a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "enabled_by": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "merge_method": { + "type": "string", + "description": "The merge method to use.", + "enum": [ + "merge", + "squash", + "rebase" + ] + }, + "commit_title": { + "type": "string", + "description": "Title for the merge commit message." + }, + "commit_message": { + "type": "string", + "description": "Commit message for the merge commit." + } + }, + "required": [ + "enabled_by", + "merge_method", + "commit_title", + "commit_message" + ] + }, + "stack": { + "title": "Pull Request Stack", + "description": "The stack information associated with a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The base ref of the stack this pull request belongs to." + }, + "sha": { + "type": "string", + "description": "The base SHA of the stack this pull request belongs to." + } + }, + "required": [ + "ref", + "sha" + ] + }, + "size": { + "type": "integer", + "description": "The total number of pull requests in the stack." + }, + "position": { + "type": "integer", + "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + }, + "id": { + "type": "integer", + "description": "The ID of the stack that this pull request belongs to." + }, + "number": { + "type": "integer", + "description": "The number of the stack that this pull request belongs to." + } + }, + "required": [ + "base" + ] + }, + "draft": { + "description": "Indicates whether or not the pull request is a draft.", + "type": "boolean", + "examples": [ + false + ] + } + }, + "required": [ + "_links", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ] + } + } + }, + "required": [ + "number", + "created_at", + "url", + "html_url", + "instances_url", + "state", + "dismissed_by", + "dismissed_at", + "dismissed_reason", + "rule", + "tool", + "most_recent_instance" + ] + }, + "examples": { + "default": { + "value": { + "number": 42, + "created_at": "2020-06-19T11:21:34Z", + "url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42", + "html_url": "https://github.com/octocat/hello-world/code-scanning/42", + "state": "dismissed", + "fixed_at": null, + "dismissed_by": { + "login": "octocat", + "id": 54933897, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "dismissed_at": "2020-02-14T12:29:18Z", + "dismissed_reason": "false positive", + "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", + "rule": { + "id": "js/zipslip", + "severity": "error", + "security_severity_level": "high", + "description": "Arbitrary file write during zip extraction (\"Zip Slip\")", + "name": "js/zipslip", + "full_description": "Extracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten.", + "tags": [ + "security", + "external/cwe/cwe-022" + ], + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" + }, + "tool": { + "name": "CodeQL", + "guid": null, + "version": "2.4.0" + }, + "most_recent_instance": { + "ref": "refs/heads/main", + "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", + "environment": "{}", + "state": "dismissed", + "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", + "message": { + "text": "This path depends on a user-provided value." + }, + "location": { + "path": "spec-main/api-session-spec.ts", + "start_line": 917, + "end_line": 917, + "start_column": 7, + "end_column": 18 + }, + "classifications": [ + "test" + ] + }, + "instances_url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances" + } + } + } + } + } + }, + "304": { + "description": "Not modified" + }, + "403": { + "description": "Response if GitHub Advanced Security is not enabled for this repository", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "code-scanning", + "subcategory": "code-scanning" + } + }, + "patch": { + "summary": "Update a code scanning alert", + "description": "Updates the status of a single code scanning alert.\nOAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.", + "operationId": "code-scanning/update-alert", + "tags": [ + "code-scanning" + ], + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/code-scanning/code-scanning#update-a-code-scanning-alert" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alert_number", + "in": "path", + "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", + "required": true, + "schema": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "state": { + "description": "Sets the state of the code scanning alert. You must provide `dismissed_reason` when you set the state to `dismissed`.", + "type": "string", + "enum": [ + "open", + "dismissed" + ] + }, + "dismissed_reason": { + "type": [ + "string", + "null" + ], + "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", + "enum": [ + "false positive", + "won't fix", + "used in tests", + null + ] + }, + "dismissed_comment": { + "type": [ + "string", + "null" + ], + "description": "The dismissal comment associated with the dismissal of the alert.", + "maxLength": 280 + }, + "create_request": { + "type": "boolean", + "description": "If `true`, attempt to create an alert dismissal request." + }, + "assignees": { + "description": "The list of users to assign to the code scanning alert. An empty array unassigns all previous assignees from the alert.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "anyOf": [ + { + "required": [ + "state" + ] + }, + { + "required": [ + "assignees" + ] + } + ] + }, + "examples": { + "default": { + "value": { + "state": "dismissed", + "dismissed_reason": "false positive", + "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", + "create_request": true + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "number": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + }, + "created_at": { + "type": "string", + "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "updated_at": { + "type": "string", + "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "url": { + "type": "string", + "description": "The REST API URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "html_url": { + "type": "string", + "description": "The GitHub URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "instances_url": { + "type": "string", + "description": "The REST API URL for fetching the list of instances for an alert.", + "format": "uri", + "readOnly": true + }, + "state": { + "type": [ + "string", + "null" + ], + "description": "State of a code scanning alert.", + "enum": [ + "open", + "dismissed", + "fixed", + null + ] + }, + "fixed_at": { + "type": [ + "string", + "null" + ], + "description": "The time that the alert was no longer detected and was considered fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "dismissed_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "dismissed_at": { + "type": [ + "string", + "null" + ], + "description": "The time that the alert was dismissed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "dismissed_reason": { + "type": [ + "string", + "null" + ], + "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", + "enum": [ + "false positive", + "won't fix", + "used in tests", + null + ] + }, + "dismissed_comment": { + "type": [ + "string", + "null" + ], + "description": "The dismissal comment associated with the dismissal of the alert.", + "maxLength": 280 + }, + "rule": { + "type": "object", + "properties": { + "id": { + "type": [ + "string", + "null" + ], + "description": "A unique identifier for the rule used to detect the alert." + }, + "name": { + "type": "string", + "description": "The name of the rule used to detect the alert." + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the alert.", + "enum": [ + "none", + "note", + "warning", + "error", + null + ] + }, + "security_severity_level": { + "type": [ + "string", + "null" + ], + "description": "The security severity of the alert.", + "enum": [ + "low", + "medium", + "high", + "critical", + null + ] + }, + "description": { + "type": "string", + "description": "A short description of the rule used to detect the alert." + }, + "full_description": { + "type": "string", + "description": "A description of the rule used to detect the alert." + }, + "tags": { + "type": [ + "array", + "null" + ], + "description": "A set of tags applicable for the rule.", + "items": { + "type": "string" + } + }, + "help": { + "type": [ + "string", + "null" + ], + "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." + } + } + }, + "tool": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the tool used to generate the code scanning analysis." + }, + "version": { + "type": [ + "string", + "null" + ], + "description": "The version of the tool used to generate the code scanning analysis." + }, + "guid": { + "type": [ + "string", + "null" + ], + "description": "The GUID of the tool used to generate the code scanning analysis, if provided in the uploaded SARIF data." + } + } + }, + "most_recent_instance": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The Git reference, formatted as `refs/pull//merge`, `refs/pull//head`,\n`refs/heads/` or simply ``." + }, + "analysis_key": { + "type": "string", + "description": "Identifies the configuration under which the analysis was executed. For example, in GitHub Actions this includes the workflow filename and job name." + }, + "environment": { + "type": "string", + "description": "Identifies the variable values associated with the environment in which the analysis that generated this alert instance was performed, such as the language that was analyzed." + }, + "category": { + "type": "string", + "description": "Identifies the configuration under which the analysis was executed. Used to distinguish between multiple analyses for the same tool and commit, but performed on different languages or different parts of the code." + }, + "state": { + "type": [ + "string", + "null" + ], + "description": "State of a code scanning alert.", + "enum": [ + "open", + "dismissed", + "fixed", + null + ] + }, + "commit_sha": { + "type": "string" + }, + "message": { + "type": "object", + "properties": { + "text": { + "type": "string" + }, + "markdown": { + "type": "string", + "description": "The message text as GitHub-flavored Markdown, with placeholder links for related locations replaced by links to the relevant code. Only populated when related locations are available for the alert instance." + } + } + }, + "location": { + "type": "object", + "description": "Describe a region within a file for the alert.", + "properties": { + "path": { + "type": "string" + }, + "start_line": { + "type": "integer" + }, + "end_line": { + "type": "integer" + }, + "start_column": { + "type": "integer" + }, + "end_column": { + "type": "integer" + } + } + }, + "html_url": { + "type": "string" + }, + "classifications": { + "type": "array", + "description": "Classifications that have been applied to the file that triggered the alert.\nFor example identifying it as documentation, or a generated file.", + "items": { + "type": [ + "string", + "null" + ], + "description": "A classification of the file. For example to identify it as generated.", + "enum": [ + "source", + "generated", + "test", + "library", + null + ] + } + } + } + }, + "dismissal_approved_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "linked_pull_requests": { + "description": "Pull requests linked to this alert.", + "type": "array", + "items": { + "title": "Pull Request Simple", + "description": "Pull Request Simple", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOlB1bGxSZXF1ZXN0MQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347" + ] + }, + "diff_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347.diff" + ] + }, + "patch_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347.patch" + ] + }, + "issue_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] + }, + "commits_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + ] + }, + "review_comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" + ] + }, + "review_comment_url": { + "type": "string", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" + ] + }, + "statuses_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "number": { + "type": "integer", + "examples": [ + 1347 + ] + }, + "state": { + "type": "string", + "examples": [ + "open" + ] + }, + "locked": { + "type": "boolean", + "examples": [ + true + ] + }, + "title": { + "type": "string", + "examples": [ + "new-feature" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "type": [ + "string", + "null" + ], + "examples": [ + "Please pull these awesome changes" + ] + }, + "labels": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "color": { + "type": "string" + }, + "default": { + "type": "boolean" + } + }, + "required": [ + "id", + "node_id", + "url", + "name", + "description", + "color", + "default" + ] + } + }, + "milestone": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Milestone", + "description": "A collection of related issues and pull requests.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/milestones/v1.0" + ] + }, + "labels_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1002604 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDk6TWlsZXN0b25lMTAwMjYwNA==" + ] + }, + "number": { + "description": "The number of the milestone.", + "type": "integer", + "examples": [ + 42 + ] + }, + "state": { + "description": "The state of the milestone.", + "type": "string", + "enum": [ + "open", + "closed" + ], + "default": "open", + "examples": [ + "open" + ] + }, + "title": { + "description": "The title of the milestone.", + "type": "string", + "examples": [ + "v1.0" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "Tracking milestone for version 1.0" + ] + }, + "creator": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "open_issues": { + "type": "integer", + "examples": [ + 4 + ] + }, + "closed_issues": { + "type": "integer", + "examples": [ + 8 + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-10T20:09:31Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2014-03-03T18:58:10Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2013-02-12T13:22:01Z" + ] + }, + "due_on": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2012-10-09T23:39:01Z" + ] + } + }, + "required": [ + "closed_issues", + "creator", + "description", + "due_on", + "closed_at", + "id", + "node_id", + "labels_url", + "html_url", + "number", + "open_issues", + "state", + "title", + "url", + "created_at", + "updated_at" + ] + } + ] + }, + "active_lock_reason": { + "type": [ + "string", + "null" + ], + "examples": [ + "too heated" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_reviewers": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" + ], + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } + }, + "head": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "base": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "_links": { + "type": "object", + "properties": { + "comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "commits": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "statuses": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "issue": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comment": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "comments", + "commits", + "statuses", + "html", + "issue", + "review_comments", + "review_comment", + "self" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + }, + "auto_merge": { + "title": "Auto merge", + "description": "The status of auto merging a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "enabled_by": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "merge_method": { + "type": "string", + "description": "The merge method to use.", + "enum": [ + "merge", + "squash", + "rebase" + ] + }, + "commit_title": { + "type": "string", + "description": "Title for the merge commit message." + }, + "commit_message": { + "type": "string", + "description": "Commit message for the merge commit." + } + }, + "required": [ + "enabled_by", + "merge_method", + "commit_title", + "commit_message" + ] + }, + "stack": { + "title": "Pull Request Stack", + "description": "The stack information associated with a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The base ref of the stack this pull request belongs to." + }, + "sha": { + "type": "string", + "description": "The base SHA of the stack this pull request belongs to." + } + }, + "required": [ + "ref", + "sha" + ] + }, + "size": { + "type": "integer", + "description": "The total number of pull requests in the stack." + }, + "position": { + "type": "integer", + "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + }, + "id": { + "type": "integer", + "description": "The ID of the stack that this pull request belongs to." + }, + "number": { + "type": "integer", + "description": "The number of the stack that this pull request belongs to." + } + }, + "required": [ + "base" + ] + }, + "draft": { + "description": "Indicates whether or not the pull request is a draft.", + "type": "boolean", + "examples": [ + false + ] + } + }, + "required": [ + "_links", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ] + } + } + }, + "required": [ + "number", + "created_at", + "url", + "html_url", + "instances_url", + "state", + "dismissed_by", + "dismissed_at", + "dismissed_reason", + "rule", + "tool", + "most_recent_instance" + ] + }, + "examples": { + "default": { + "value": { + "number": 42, + "created_at": "2020-08-25T21:28:36Z", + "url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42", + "html_url": "https://github.com/octocat/hello-world/code-scanning/42", + "state": "dismissed", + "fixed_at": null, + "dismissed_by": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "dismissed_at": "2020-09-02T22:34:56Z", + "dismissed_reason": "false positive", + "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", + "rule": { + "id": "js/zipslip", + "severity": "error", + "security_severity_level": "high", + "description": "Arbitrary file write during zip extraction (\"Zip Slip\")", + "name": "js/zipslip", + "full_description": "Extracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten.", + "tags": [ + "security", + "external/cwe/cwe-022" + ], + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" + }, + "tool": { + "name": "CodeQL", + "guid": null, + "version": "2.4.0" + }, + "most_recent_instance": { + "ref": "refs/heads/main", + "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", + "environment": "{}", + "state": "dismissed", + "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", + "message": { + "text": "This path depends on a user-provided value." + }, + "location": { + "path": "spec-main/api-session-spec.ts", + "start_line": 917, + "end_line": 917, + "start_column": 7, + "end_column": 18 + }, + "classifications": [ + "test" + ] + }, + "instances_url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances" + } + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { + "type": [ + "string", + "null" + ] + }, + "documentation_url": { + "type": [ + "string", + "null" + ] + }, + "detail": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": "integer" + }, + "scimType": { + "type": [ + "string", + "null" + ] + }, + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "403": { + "description": "Response if the repository is archived or if GitHub Advanced Security is not enabled for this repository", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "enabledForGitHubApps": true, + "githubCloudOnly": false, + "category": "code-scanning", + "subcategory": "code-scanning" + } + } + }, + "/repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix": { + "get": { + "summary": "Get the status of an autofix for a code scanning alert", + "description": "Gets the status and description of an autofix for a code scanning alert on the repository's default branch.\n\nOAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.", + "tags": [ + "code-scanning" + ], + "operationId": "code-scanning/get-autofix", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/code-scanning/code-scanning#get-the-status-of-an-autofix-for-a-code-scanning-alert" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alert_number", + "in": "path", + "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", + "required": true, + "schema": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "type": "string", + "description": "The status of an autofix.", + "enum": [ + "pending", + "error", + "success", + "outdated" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "description": "The description of an autofix." + }, + "started_at": { + "type": "string", + "description": "The start time of an autofix in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + } + }, + "required": [ + "status", + "description", + "started_at" + ] + }, + "examples": { + "default": { + "value": { + "status": "success", + "description": "This fixes an XSS vulnerability by escaping the user input.", + "started_at": "2024-02-14T12:29:18Z" + } + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + }, + "examples": { + "default": { + "value": { + "message": "The alert_number is not valid", + "documentation_url": "https://docs.github.com/rest/code-scanning/code-scanning#get-the-status-of-an-autofix-for-a-code-scanning-alert", + "status": "400" + } + } + } + } + } + }, + "403": { + "description": "Response if GitHub Advanced Security is not enabled for this repository", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { "type": "string" } } @@ -641237,40 +649295,1185 @@ ] } }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "type" - ] - } - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "parent", - "type" - ] - } + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } + }, + "head": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] }, - "head": { + "base": { "type": "object", "properties": { "label": { @@ -641701,1949 +650904,3467 @@ "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" ] }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "_links": { + "type": "object", + "properties": { + "comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "commits": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "statuses": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "issue": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comment": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "comments", + "commits", + "statuses", + "html", + "issue", + "review_comments", + "review_comment", + "self" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + }, + "auto_merge": { + "title": "Auto merge", + "description": "The status of auto merging a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "enabled_by": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" ] }, - "git_url": { + "login": { "type": "string", "examples": [ - "git:github.com/octocat/Hello-World.git" + "octocat" ] }, - "issue_comment_url": { - "type": "string", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + 1 ] }, - "issue_events_url": { + "node_id": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + "MDQ6VXNlcjE=" ] }, - "issues_url": { + "avatar_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + "https://github.com/images/error/octocat_happy.gif" ] }, - "keys_url": { - "type": "string", + "gravatar_id": { + "type": [ + "string", + "null" + ], "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + "41d064eb2195891e12d0413f63227ea7" ] }, - "labels_url": { + "url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + "https://api.github.com/users/octocat" ] }, - "languages_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" + "https://github.com/octocat" ] }, - "merges_url": { + "followers_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" + "https://api.github.com/users/octocat/followers" ] }, - "milestones_url": { + "following_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "notifications_url": { + "gists_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "pulls_url": { + "starred_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "releases_url": { + "subscriptions_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + "https://api.github.com/users/octocat/subscriptions" ] }, - "ssh_url": { + "organizations_url": { "type": "string", + "format": "uri", "examples": [ - "git@github.com:octocat/Hello-World.git" + "https://api.github.com/users/octocat/orgs" ] }, - "stargazers_url": { + "repos_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" + "https://api.github.com/users/octocat/repos" ] }, - "statuses_url": { + "events_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "subscribers_url": { + "received_events_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" + "https://api.github.com/users/octocat/received_events" ] }, - "subscription_url": { + "type": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" + "User" ] }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] + "site_admin": { + "type": "boolean" }, - "teams_url": { + "starred_at": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" + "\"2020-07-09T00:17:55Z\"" ] }, - "trees_url": { + "user_view_type": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + "public" ] - }, - "clone_url": { + } + }, + "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" + ] + }, + "merge_method": { + "type": "string", + "description": "The merge method to use.", + "enum": [ + "merge", + "squash", + "rebase" + ] + }, + "commit_title": { + "type": "string", + "description": "Title for the merge commit message." + }, + "commit_message": { + "type": "string", + "description": "Commit message for the merge commit." + } + }, + "required": [ + "enabled_by", + "merge_method", + "commit_title", + "commit_message" + ] + }, + "stack": { + "title": "Pull Request Stack", + "description": "The stack information associated with a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "base": { + "type": "object", + "properties": { + "ref": { "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] + "description": "The base ref of the stack this pull request belongs to." }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" - ] + "sha": { + "type": "string", + "description": "The base SHA of the stack this pull request belongs to." + } + }, + "required": [ + "ref", + "sha" + ] + }, + "size": { + "type": "integer", + "description": "The total number of pull requests in the stack." + }, + "position": { + "type": "integer", + "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + }, + "id": { + "type": "integer", + "description": "The ID of the stack that this pull request belongs to." + }, + "number": { + "type": "integer", + "description": "The number of the stack that this pull request belongs to." + } + }, + "required": [ + "base" + ] + }, + "draft": { + "description": "Indicates whether or not the pull request is a draft.", + "type": "boolean", + "examples": [ + false + ] + } + }, + "required": [ + "_links", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347", + "id": 1, + "node_id": "MDExOlB1bGxSZXF1ZXN0MQ==", + "html_url": "https://github.com/octocat/Hello-World/pull/1347", + "diff_url": "https://github.com/octocat/Hello-World/pull/1347.diff", + "patch_url": "https://github.com/octocat/Hello-World/pull/1347.patch", + "issue_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits", + "review_comments_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments", + "review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e", + "number": 1347, + "state": "open", + "locked": true, + "title": "Amazing new feature", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Please pull these awesome changes in!", + "labels": [ + { + "id": 208045946, + "node_id": "MDU6TGFiZWwyMDgwNDU5NDY=", + "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", + "name": "bug", + "description": "Something isn't working", + "color": "f29513", + "default": true + } + ], + "milestone": { + "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", + "html_url": "https://github.com/octocat/Hello-World/milestones/v1.0", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels", + "id": 1002604, + "node_id": "MDk6TWlsZXN0b25lMTAwMjYwNA==", + "number": 1, + "state": "open", + "title": "v1.0", + "description": "Tracking milestone for version 1.0", + "creator": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "open_issues": 4, + "closed_issues": 8, + "created_at": "2011-04-10T20:09:31Z", + "updated_at": "2014-03-03T18:58:10Z", + "closed_at": "2013-02-12T13:22:01Z", + "due_on": "2012-10-09T23:39:01Z" + }, + "active_lock_reason": "too heated", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:01:12Z", + "closed_at": "2011-01-26T19:01:12Z", + "merged_at": "2011-01-26T19:01:12Z", + "assignees": [ + { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + { + "login": "hubot", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/hubot_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/hubot", + "html_url": "https://github.com/hubot", + "followers_url": "https://api.github.com/users/hubot/followers", + "following_url": "https://api.github.com/users/hubot/following{/other_user}", + "gists_url": "https://api.github.com/users/hubot/gists{/gist_id}", + "starred_url": "https://api.github.com/users/hubot/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/hubot/subscriptions", + "organizations_url": "https://api.github.com/users/hubot/orgs", + "repos_url": "https://api.github.com/users/hubot/repos", + "events_url": "https://api.github.com/users/hubot/events{/privacy}", + "received_events_url": "https://api.github.com/users/hubot/received_events", + "type": "User", + "site_admin": true + } + ], + "requested_reviewers": [ + { + "login": "other_user", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/other_user_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/other_user", + "html_url": "https://github.com/other_user", + "followers_url": "https://api.github.com/users/other_user/followers", + "following_url": "https://api.github.com/users/other_user/following{/other_user}", + "gists_url": "https://api.github.com/users/other_user/gists{/gist_id}", + "starred_url": "https://api.github.com/users/other_user/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/other_user/subscriptions", + "organizations_url": "https://api.github.com/users/other_user/orgs", + "repos_url": "https://api.github.com/users/other_user/repos", + "events_url": "https://api.github.com/users/other_user/events{/privacy}", + "received_events_url": "https://api.github.com/users/other_user/received_events", + "type": "User", + "site_admin": false + } + ], + "requested_teams": [ + { + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "name": "Justice League", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "permission": "admin", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "parent": null + } + ], + "head": { + "label": "octocat:new-topic", + "ref": "new-topic", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "repo": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "template_repository": null, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://github.com/licenses/mit" + }, + "forks": 1, + "open_issues": 1, + "watchers": 1 + } + }, + "base": { + "label": "octocat:master", + "ref": "master", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "repo": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "template_repository": null, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://github.com/licenses/mit" + }, + "forks": 1, + "open_issues": 1, + "watchers": 1 + } + }, + "_links": { + "self": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347" + }, + "html": { + "href": "https://github.com/octocat/Hello-World/pull/1347" + }, + "issue": { + "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347" + }, + "comments": { + "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" + }, + "review_comments": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" + }, + "review_comment": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" + }, + "commits": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + }, + "statuses": { + "href": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + } + }, + "author_association": "OWNER", + "auto_merge": null, + "draft": false + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "review-requests" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/reviews": { + "get": { + "summary": "List reviews for a pull request", + "description": "Lists all reviews for a specified pull request. The list of reviews returns in chronological order.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/list-reviews", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#list-reviews-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "The list of reviews returns in chronological order.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - "hooks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" - ] + "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" + ] + } + ] + }, + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "object", + "properties": { + "href": { + "type": "string" + } }, - "svn_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] + "required": [ + "href" + ] + }, + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string" + } }, - "homepage": { + "required": [ + "href" + ] + } + }, + "required": [ + "html", + "pull_request" + ] + }, + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], + "examples": [ + "54bb654c9e6025347f57900a4a5c2313a96b8035" + ] + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + } + }, + "required": [ + "id", + "node_id", + "user", + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" + ] + } + }, + "examples": { + "default": { + "value": [ + { + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Here is the body for the review.", + "state": "APPROVED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "_links": { + "html": { + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + }, + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + } + }, + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" + } + ] + } + } + } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "reviews" + } + }, + "post": { + "summary": "Create a review for a pull request", + "description": "Creates a review on a specified pull request.\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"\n\nPull request reviews created in the `PENDING` state are not submitted and therefore do not include the `submitted_at` property in the response. To create a pending review for a pull request, leave the `event` parameter blank. For more information about submitting a `PENDING` review, see \"[Submit a review for a pull request](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request).\"\n\n> [!NOTE]\n> To comment on a specific line in a file, you need to first determine the position of that line in the diff. To see a pull request diff, add the `application/vnd.github.v3.diff` media type to the `Accept` header of a call to the [Get a pull request](https://docs.github.com/rest/pulls/pulls#get-a-pull-request) endpoint.\n\nThe `position` value equals the number of lines down from the first \"@@\" hunk header in the file you want to add a comment. The line just below the \"@@\" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/create-review", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#create-a-review-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": false, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "commit_id": { + "type": "string", + "description": "The SHA of the commit that needs a review. Not using the latest commit SHA may render your review comment outdated if a subsequent commit modifies the line you specify as the `position`. Defaults to the most recent commit in the pull request when you do not specify a value." + }, + "body": { + "type": "string", + "description": "**Required** when using `REQUEST_CHANGES` or `COMMENT` for the `event` parameter. The body text of the pull request review." + }, + "event": { + "type": "string", + "description": "The review action you want to perform. The review actions include: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. By leaving this blank, you set the review action state to `PENDING`, which means you will need to [submit the pull request review](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request) when you are ready.", + "enum": [ + "APPROVE", + "REQUEST_CHANGES", + "COMMENT" + ] + }, + "comments": { + "type": "array", + "description": "Use the following table to specify the location, destination, and contents of the draft review comment.", + "items": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The relative path to the file that necessitates a review comment." + }, + "position": { + "type": "integer", + "description": "The position in the diff where you want to add a review comment. Note this value is not the same as the line number in the file. The `position` value equals the number of lines down from the first \"@@\" hunk header in the file you want to add a comment. The line just below the \"@@\" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file." + }, + "body": { + "type": "string", + "description": "Text of the review comment." + }, + "line": { + "type": "integer", + "examples": [ + 28 + ] + }, + "side": { + "type": "string", + "examples": [ + "RIGHT" + ] + }, + "start_line": { + "type": "integer", + "examples": [ + 26 + ] + }, + "start_side": { + "type": "string", + "examples": [ + "LEFT" + ] + } + }, + "required": [ + "path", + "body" + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "body": "This is close to perfect! Please address the suggested inline change.", + "event": "REQUEST_CHANGES", + "comments": [ + { + "path": "file.md", + "position": 6, + "body": "Please add more information here, and fix this typo." + } + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { "type": [ "string", "null" - ], - "format": "uri", - "examples": [ - "https://github.com" ] }, - "language": { + "email": { "type": [ "string", "null" ] }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "description": "The default branch of the repository.", + "login": { "type": "string", "examples": [ - "master" + "octocat" ] }, - "open_issues_count": { + "id": { "type": "integer", + "format": "int64", "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "topics": { - "type": "array", - "items": { - "type": "string" - } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true + 1 ] }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "node_id": { "type": "string", - "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", "examples": [ - "2011-01-26T19:06:43Z" + "MDQ6VXNlcjE=" ] }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", + "avatar_url": { + "type": "string", + "format": "uri", "examples": [ - "2011-01-26T19:01:12Z" + "https://github.com/images/error/octocat_happy.gif" ] }, - "updated_at": { + "gravatar_id": { "type": [ "string", "null" ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", "examples": [ - false + "41d064eb2195891e12d0413f63227ea7" ] }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", + "url": { + "type": "string", + "format": "uri", "examples": [ - false + "https://api.github.com/users/octocat" ] }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", + "html_url": { + "type": "string", + "format": "uri", "examples": [ - false + "https://github.com/octocat" ] }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { + "followers_url": { "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", + "format": "uri", "examples": [ - true + "https://api.github.com/users/octocat/followers" ] }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "starred_at": { + "following_url": { "type": "string", "examples": [ - "\"2020-07-09T00:17:42Z\"" - ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { - "type": "string" - } - } - } - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] - }, - "sha": { - "type": "string" - }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - } - }, - "required": [ - "label", - "ref", - "repo", - "sha", - "user" - ] - }, - "base": { - "type": "object", - "properties": { - "label": { - "type": "string" - }, - "ref": { - "type": "string" - }, - "repo": { - "title": "Repository", - "description": "A repository on GitHub.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", "examples": [ - 42 + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "node_id": { + "starred_url": { "type": "string", "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "name": { - "description": "The name of the repository.", + "subscriptions_url": { "type": "string", + "format": "uri", "examples": [ - "Team Environment" + "https://api.github.com/users/octocat/subscriptions" ] }, - "full_name": { + "organizations_url": { "type": "string", + "format": "uri", "examples": [ - "octocat/Hello-World" + "https://api.github.com/users/octocat/orgs" ] }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" ] }, - "forks": { - "type": "integer" + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } - }, - "required": [ - "admin", - "pull", - "push" + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" ] }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" + "type": { + "type": "string", + "examples": [ + "User" ] }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, + "site_admin": { "type": "boolean" }, - "html_url": { + "starred_at": { "type": "string", - "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World" + "\"2020-07-09T00:17:55Z\"" ] }, - "description": { + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "html", + "pull_request" + ] + }, + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], + "examples": [ + "54bb654c9e6025347f57900a4a5c2313a96b8035" + ] + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + } + }, + "required": [ + "id", + "node_id", + "user", + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" + ] + }, + "examples": { + "default": { + "value": { + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "This is close to perfect! Please address the suggested inline change.", + "state": "CHANGES_REQUESTED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "_links": { + "html": { + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + }, + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + } + }, + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error Simple", + "description": "Validation Error Simple", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "triggersNotification": true, + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "reviews" + } + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}": { + "get": { + "summary": "Get a review for a pull request", + "description": "Retrieves a pull request review by its ID.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/get-review", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#get-a-review-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { "type": [ "string", "null" - ], - "examples": [ - "This your first repo!" ] }, - "fork": { - "type": "boolean" + "email": { + "type": [ + "string", + "null" + ] }, - "url": { + "login": { "type": "string", - "format": "uri", "examples": [ - "https://api.github.com/repos/octocat/Hello-World" + "octocat" ] }, - "archive_url": { - "type": "string", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + 1 ] }, - "assignees_url": { + "node_id": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + "MDQ6VXNlcjE=" ] }, - "blobs_url": { + "avatar_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + "https://github.com/images/error/octocat_happy.gif" ] }, - "branches_url": { + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + "https://api.github.com/users/octocat" ] }, - "collaborators_url": { + "html_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + "https://github.com/octocat" ] }, - "comments_url": { + "followers_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + "https://api.github.com/users/octocat/followers" ] }, - "commits_url": { + "following_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "compare_url": { + "gists_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "contents_url": { + "starred_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "contributors_url": { + "subscriptions_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" + "https://api.github.com/users/octocat/subscriptions" ] }, - "deployments_url": { + "organizations_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" + "https://api.github.com/users/octocat/orgs" ] }, - "downloads_url": { + "repos_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" + "https://api.github.com/users/octocat/repos" ] }, "events_url": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "forks_url": { + "received_events_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" + "https://api.github.com/users/octocat/received_events" ] }, - "git_commits_url": { + "type": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + "User" ] }, - "git_refs_url": { + "site_admin": { + "type": "boolean" + }, + "starred_at": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + "\"2020-07-09T00:17:55Z\"" ] }, - "git_tags_url": { + "user_view_type": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" + ] + }, + "_links": { + "type": "object", + "properties": { + "html": { + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "html", + "pull_request" + ] + }, + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], + "examples": [ + "54bb654c9e6025347f57900a4a5c2313a96b8035" + ] + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + } + }, + "required": [ + "id", + "node_id", + "user", + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" + ] + }, + "examples": { + "default": { + "value": { + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "Here is the body for the review.", + "state": "APPROVED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "_links": { + "html": { + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + }, + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + } + }, + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "reviews" + } + }, + "put": { + "summary": "Update a review for a pull request", + "description": "Updates the contents of a specified review summary comment.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/update-review", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#update-a-review-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "body": { + "type": "string", + "description": "The body text of the pull request review." + } + }, + "required": [ + "body" + ] + }, + "examples": { + "default": { + "value": { + "body": "This is close to perfect! Please address the suggested inline change. And add more about this." + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" ] }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" + "email": { + "type": [ + "string", + "null" ] }, - "issue_comment_url": { + "login": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + "octocat" ] }, - "issue_events_url": { - "type": "string", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + 1 ] }, - "issues_url": { + "node_id": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + "MDQ6VXNlcjE=" ] }, - "keys_url": { + "avatar_url": { "type": "string", + "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + "https://github.com/images/error/octocat_happy.gif" ] }, - "labels_url": { - "type": "string", + "gravatar_id": { + "type": [ + "string", + "null" + ], "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + "41d064eb2195891e12d0413f63227ea7" ] }, - "languages_url": { + "url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" + "https://api.github.com/users/octocat" ] }, - "merges_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" + "https://github.com/octocat" ] }, - "stargazers_url": { + "followers_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" + "https://api.github.com/users/octocat/followers" ] }, - "statuses_url": { + "following_url": { "type": "string", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "subscribers_url": { + "gists_url": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "subscription_url": { + "starred_url": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "tags_url": { + "subscriptions_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" + "https://api.github.com/users/octocat/subscriptions" ] }, - "teams_url": { + "organizations_url": { "type": "string", "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + "https://api.github.com/users/octocat/orgs" ] }, - "clone_url": { + "repos_url": { "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], "format": "uri", "examples": [ - "git:git.example.com/octocat/Hello-World" + "https://api.github.com/users/octocat/repos" ] }, - "hooks_url": { + "events_url": { "type": "string", - "format": "uri", "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "svn_url": { + "received_events_url": { "type": "string", "format": "uri", "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "description": "The default branch of the repository.", - "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "topics": { - "type": "array", - "items": { - "type": "string" - } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true + "https://api.github.com/users/octocat/received_events" ] }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": { "type": "string", - "enum": [ - "all", - "collaborators_only" - ], "examples": [ - "all" + "User" ] }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, + "site_admin": { "type": "boolean" }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { + "starred_at": { "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", "examples": [ - true + "\"2020-07-09T00:17:55Z\"" ] }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "starred_at": { + "user_view_type": { "type": "string", "examples": [ - "\"2020-07-09T00:17:42Z\"" + "public" ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { - "type": "string" - } - } } }, "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", + "avatar_url", "events_url", - "fork", - "forks_url", - "full_name", - "git_commits_url", - "git_refs_url", - "git_tags_url", - "hooks_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] - }, - "sha": { - "type": "string" - }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" ] } - }, - "required": [ - "label", - "ref", - "repo", - "sha", - "user" + ] + }, + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" ] }, "_links": { "type": "object", "properties": { - "comments": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "commits": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "statuses": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, "html": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "issue": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "review_comments": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "review_comment": { - "title": "Link", - "description": "Hypermedia Link", "type": "object", "properties": { "href": { @@ -643654,9 +654375,7 @@ "href" ] }, - "self": { - "title": "Link", - "description": "Hypermedia Link", + "pull_request": { "type": "object", "properties": { "href": { @@ -643669,16 +654388,30 @@ } }, "required": [ - "comments", - "commits", - "statuses", "html", - "issue", - "review_comments", - "review_comment", - "self" + "pull_request" + ] + }, + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], + "examples": [ + "54bb654c9e6025347f57900a4a5c2313a96b8035" ] }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, "author_association": { "title": "author_association", "type": "string", @@ -643694,18 +654427,186 @@ "OWNER" ], "examples": [ - "OWNER" + "OWNER" + ] + } + }, + "required": [ + "id", + "node_id", + "user", + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" + ] + }, + "examples": { + "default": { + "value": { + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "body": "This is close to perfect! Please address the suggested inline change. And add more about this.", + "state": "CHANGES_REQUESTED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "_links": { + "html": { + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + }, + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + } + }, + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error Simple", + "description": "Validation Error Simple", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "reviews" + } + }, + "delete": { + "summary": "Delete a pending review for a pull request", + "description": "Deletes a pull request review that has not been submitted. Submitted reviews cannot be deleted.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "tags": [ + "pulls" + ], + "operationId": "pulls/delete-pending-review", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/reviews#delete-a-pending-review-for-a-pull-request" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_number", + "description": "The number that identifies the pull request.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Pull Request Review", + "description": "Pull Request Reviews are reviews on pull requests.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the review", + "type": "integer", + "format": "int64", + "examples": [ + 42 ] }, - "auto_merge": { - "title": "Auto merge", - "description": "The status of auto merging a pull request.", - "type": [ - "object", - "null" - ], - "properties": { - "enabled_by": { + "node_id": { + "type": "string", + "examples": [ + "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -643872,137 +654773,124 @@ "type", "url" ] - }, - "merge_method": { - "type": "string", - "description": "The merge method to use.", - "enum": [ - "merge", - "squash", - "rebase" - ] - }, - "commit_title": { - "type": "string", - "description": "Title for the merge commit message." - }, - "commit_message": { - "type": "string", - "description": "Commit message for the merge commit." } - }, - "required": [ - "enabled_by", - "merge_method", - "commit_title", - "commit_message" ] }, - "stack": { - "title": "Pull Request Stack", - "description": "The stack information associated with a pull request.", - "type": [ - "object", - "null" - ], + "body": { + "description": "The text of the review.", + "type": "string", + "examples": [ + "This looks great." + ] + }, + "state": { + "type": "string", + "examples": [ + "CHANGES_REQUESTED" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/12" + ] + }, + "_links": { + "type": "object", "properties": { - "base": { + "html": { "type": "object", "properties": { - "ref": { - "type": "string", - "description": "The base ref of the stack this pull request belongs to." - }, - "sha": { - "type": "string", - "description": "The base SHA of the stack this pull request belongs to." + "href": { + "type": "string" } }, "required": [ - "ref", - "sha" + "href" ] }, - "size": { - "type": "integer", - "description": "The total number of pull requests in the stack." - }, - "position": { - "type": "integer", - "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." - }, - "id": { - "type": "integer", - "description": "The ID of the stack that this pull request belongs to." - }, - "number": { - "type": "integer", - "description": "The number of the stack that this pull request belongs to." + "pull_request": { + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] } }, "required": [ - "base" + "html", + "pull_request" ] }, - "draft": { - "description": "Indicates whether or not the pull request is a draft.", - "type": "boolean", + "submitted_at": { + "type": "string", + "format": "date-time" + }, + "commit_id": { + "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "type": [ + "string", + "null" + ], "examples": [ - false + "54bb654c9e6025347f57900a4a5c2313a96b8035" + ] + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" ] } }, "required": [ - "_links", - "labels", - "base", - "body", - "closed_at", - "comments_url", - "commits_url", - "created_at", - "diff_url", - "head", - "html_url", "id", "node_id", - "issue_url", - "merged_at", - "milestone", - "number", - "patch_url", - "review_comment_url", - "review_comments_url", - "statuses_url", - "state", - "locked", - "title", - "updated_at", - "url", "user", - "author_association", - "auto_merge" + "body", + "state", + "commit_id", + "html_url", + "pull_request_url", + "_links", + "author_association" ] }, "examples": { "default": { "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347", - "id": 1, - "node_id": "MDExOlB1bGxSZXF1ZXN0MQ==", - "html_url": "https://github.com/octocat/Hello-World/pull/1347", - "diff_url": "https://github.com/octocat/Hello-World/pull/1347.diff", - "patch_url": "https://github.com/octocat/Hello-World/pull/1347.patch", - "issue_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits", - "review_comments_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments", - "review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e", - "number": 1347, - "state": "open", - "locked": true, - "title": "Amazing new feature", + "id": 80, + "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", "user": { "login": "octocat", "id": 1, @@ -644023,466 +654911,21 @@ "type": "User", "site_admin": false }, - "body": "Please pull these awesome changes in!", - "labels": [ - { - "id": 208045946, - "node_id": "MDU6TGFiZWwyMDgwNDU5NDY=", - "url": "https://api.github.com/repos/octocat/Hello-World/labels/bug", - "name": "bug", - "description": "Something isn't working", - "color": "f29513", - "default": true - } - ], - "milestone": { - "url": "https://api.github.com/repos/octocat/Hello-World/milestones/1", - "html_url": "https://github.com/octocat/Hello-World/milestones/v1.0", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels", - "id": 1002604, - "node_id": "MDk6TWlsZXN0b25lMTAwMjYwNA==", - "number": 1, - "state": "open", - "title": "v1.0", - "description": "Tracking milestone for version 1.0", - "creator": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "open_issues": 4, - "closed_issues": 8, - "created_at": "2011-04-10T20:09:31Z", - "updated_at": "2014-03-03T18:58:10Z", - "closed_at": "2013-02-12T13:22:01Z", - "due_on": "2012-10-09T23:39:01Z" - }, - "active_lock_reason": "too heated", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:01:12Z", - "closed_at": "2011-01-26T19:01:12Z", - "merged_at": "2011-01-26T19:01:12Z", - "assignees": [ - { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - { - "login": "hubot", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/hubot_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/hubot", - "html_url": "https://github.com/hubot", - "followers_url": "https://api.github.com/users/hubot/followers", - "following_url": "https://api.github.com/users/hubot/following{/other_user}", - "gists_url": "https://api.github.com/users/hubot/gists{/gist_id}", - "starred_url": "https://api.github.com/users/hubot/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/hubot/subscriptions", - "organizations_url": "https://api.github.com/users/hubot/orgs", - "repos_url": "https://api.github.com/users/hubot/repos", - "events_url": "https://api.github.com/users/hubot/events{/privacy}", - "received_events_url": "https://api.github.com/users/hubot/received_events", - "type": "User", - "site_admin": true - } - ], - "requested_reviewers": [ - { - "login": "other_user", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/other_user_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/other_user", - "html_url": "https://github.com/other_user", - "followers_url": "https://api.github.com/users/other_user/followers", - "following_url": "https://api.github.com/users/other_user/following{/other_user}", - "gists_url": "https://api.github.com/users/other_user/gists{/gist_id}", - "starred_url": "https://api.github.com/users/other_user/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/other_user/subscriptions", - "organizations_url": "https://api.github.com/users/other_user/orgs", - "repos_url": "https://api.github.com/users/other_user/repos", - "events_url": "https://api.github.com/users/other_user/events{/privacy}", - "received_events_url": "https://api.github.com/users/other_user/received_events", - "type": "User", - "site_admin": false - } - ], - "requested_teams": [ - { - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "name": "Justice League", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "permission": "admin", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "parent": null - } - ], - "head": { - "label": "octocat:new-topic", - "ref": "new-topic", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "repo": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "template_repository": null, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://github.com/licenses/mit" - }, - "forks": 1, - "open_issues": 1, - "watchers": 1 - } - }, - "base": { - "label": "octocat:master", - "ref": "master", - "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "repo": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "template_repository": null, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://github.com/licenses/mit" - }, - "forks": 1, - "open_issues": 1, - "watchers": 1 - } - }, + "body": "This is close to perfect! Please address the suggested inline change.", + "state": "CHANGES_REQUESTED", + "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", "_links": { - "self": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347" - }, "html": { - "href": "https://github.com/octocat/Hello-World/pull/1347" - }, - "issue": { - "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347" - }, - "comments": { - "href": "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" - }, - "review_comments": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" - }, - "review_comment": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" - }, - "commits": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" }, - "statuses": { - "href": "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + "pull_request": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" } }, - "author_association": "OWNER", - "auto_merge": null, - "draft": false + "submitted_at": "2019-11-17T17:43:43Z", + "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", + "author_association": "COLLABORATOR" } } } @@ -644494,8 +654937,8 @@ "content": { "application/json": { "schema": { - "title": "Validation Error", - "description": "Validation Error", + "title": "Validation Error Simple", + "description": "Validation Error Simple", "type": "object", "required": [ "message", @@ -644511,79 +654954,60 @@ "errors": { "type": "array", "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } + "type": "string" } } } } } } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, "category": "pulls", - "subcategory": "review-requests" + "subcategory": "reviews" } } }, - "/repos/{owner}/{repo}/pulls/{pull_number}/reviews": { + "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments": { "get": { - "summary": "List reviews for a pull request", - "description": "Lists all reviews for a specified pull request. The list of reviews returns in chronological order.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "summary": "List comments for a pull request review", + "description": "Lists comments for a specific pull request review.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", "tags": [ "pulls" ], - "operationId": "pulls/list-reviews", + "operationId": "pulls/list-comments-for-review", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#list-reviews-for-a-pull-request" + "url": "https://docs.github.com/rest/pulls/reviews#list-comments-for-a-pull-request-review" }, "parameters": [ { @@ -644613,6 +655037,15 @@ "type": "integer" } }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, { "name": "per_page", "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", @@ -644634,28 +655067,89 @@ ], "responses": { "200": { - "description": "The list of reviews returns in chronological order.", + "description": "Response", "content": { "application/json": { "schema": { "type": "array", "items": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", + "title": "Legacy Review Comment", + "description": "Legacy Review Comment", "type": "object", "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + ] + }, + "pull_request_review_id": { + "type": [ + "integer", + "null" + ], + "format": "int64", + "examples": [ + 42 + ] + }, "id": { - "description": "Unique identifier of the review", "type": "integer", "format": "int64", "examples": [ - 42 + 10 ] }, "node_id": { "type": "string", "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw" + ] + }, + "diff_hunk": { + "type": "string", + "examples": [ + "@@ -16,33 +16,40 @@ public class Connection : IConnection..." + ] + }, + "path": { + "type": "string", + "examples": [ + "file1.txt" + ] + }, + "position": { + "type": [ + "integer", + "null" + ], + "examples": [ + 1 + ] + }, + "original_position": { + "type": "integer", + "examples": [ + 4 + ] + }, + "commit_id": { + "type": "string", + "examples": [ + "6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "original_commit_id": { + "type": "string", + "examples": [ + "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840" + ] + }, + "in_reply_to_id": { + "type": "integer", + "examples": [ + 8 ] }, "user": { @@ -644834,113 +655328,245 @@ ] }, "body": { - "description": "The text of the review.", "type": "string", "examples": [ - "This looks great." + "Great stuff" ] }, - "state": { + "created_at": { "type": "string", + "format": "date-time", "examples": [ - "CHANGES_REQUESTED" + "2011-04-14T16:00:49Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-14T16:00:49Z" ] }, "html_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" + ] + }, + "pull_request_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + }, + "_links": { + "type": "object", + "properties": { + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "pull_request": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "self", + "html", + "pull_request" + ] + }, + "body_text": { + "type": "string" + }, + "body_html": { + "type": "string" + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" + } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" + ] + }, + "side": { + "description": "The side of the first line of the range for a multi-line comment.", + "enum": [ + "LEFT", + "RIGHT" + ], + "default": "RIGHT", + "type": "string" + }, + "start_side": { + "type": [ + "string", + "null" + ], + "description": "The side of the first line of the range for a multi-line comment.", + "enum": [ + "LEFT", + "RIGHT", + null + ], + "default": "RIGHT" + }, + "line": { + "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "type": "integer", + "examples": [ + 2 ] }, - "pull_request_url": { - "type": "string", - "format": "uri", + "original_line": { + "description": "The original line of the blob to which the comment applies. The last line of the range for a multi-line comment", + "type": "integer", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" + 2 ] }, - "_links": { - "type": "object", - "properties": { - "html": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - } - }, - "required": [ - "html", - "pull_request" + "start_line": { + "description": "The first line of the range for a multi-line comment.", + "type": [ + "integer", + "null" + ], + "examples": [ + 2 ] }, - "submitted_at": { - "type": "string", - "format": "date-time" - }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", + "original_start_line": { + "description": "The original first line of the range for a multi-line comment.", "type": [ - "string", + "integer", "null" ], "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" + 2 ] }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "author_association": { - "title": "author_association", + "subject_type": { + "description": "The level at which the comment is targeted, can be a diff line or a file.", "type": "string", - "description": "How the author is associated with the repository.", "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" + "line", + "file" ] } }, "required": [ "id", "node_id", - "user", + "url", "body", - "state", + "diff_hunk", + "path", + "position", + "original_position", "commit_id", + "original_commit_id", + "user", + "pull_request_review_id", "html_url", "pull_request_url", "_links", - "author_association" + "author_association", + "created_at", + "updated_at" ] } }, @@ -644948,8 +655574,17 @@ "default": { "value": [ { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", + "url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", + "pull_request_review_id": 42, + "id": 10, + "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw", + "diff_hunk": "@@ -16,33 +16,40 @@ public class Connection : IConnection...", + "path": "file1.txt", + "position": 1, + "original_position": 4, + "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "original_commit_id": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840", + "in_reply_to_id": 8, "user": { "login": "octocat", "id": 1, @@ -644970,21 +655605,23 @@ "type": "User", "site_admin": false }, - "body": "Here is the body for the review.", - "state": "APPROVED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "body": "Great stuff!", + "created_at": "2011-04-14T16:00:49Z", + "updated_at": "2011-04-14T16:00:49Z", + "html_url": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1", + "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", + "author_association": "NONE", "_links": { + "self": { + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" + }, "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + "href": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" }, "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1" } - }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" + } } ] } @@ -644999,6 +655636,32 @@ } } } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -645007,17 +655670,19 @@ "category": "pulls", "subcategory": "reviews" } - }, - "post": { - "summary": "Create a review for a pull request", - "description": "Creates a review on a specified pull request.\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"\n\nPull request reviews created in the `PENDING` state are not submitted and therefore do not include the `submitted_at` property in the response. To create a pending review for a pull request, leave the `event` parameter blank. For more information about submitting a `PENDING` review, see \"[Submit a review for a pull request](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request).\"\n\n> [!NOTE]\n> To comment on a specific line in a file, you need to first determine the position of that line in the diff. To see a pull request diff, add the `application/vnd.github.v3.diff` media type to the `Accept` header of a call to the [Get a pull request](https://docs.github.com/rest/pulls/pulls#get-a-pull-request) endpoint.\n\nThe `position` value equals the number of lines down from the first \"@@\" hunk header in the file you want to add a comment. The line just below the \"@@\" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals": { + "put": { + "summary": "Dismiss a review for a pull request", + "description": "Dismisses a specified review on a pull request.\n\n> [!NOTE]\n> To dismiss a pull request review on a [protected branch](https://docs.github.com/rest/branches/branch-protection), you must be a repository administrator or be included in the list of people or teams who can dismiss pull request reviews.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", "tags": [ "pulls" ], - "operationId": "pulls/create-review", + "operationId": "pulls/dismiss-review", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#create-a-review-for-a-pull-request" + "url": "https://docs.github.com/rest/pulls/reviews#dismiss-a-review-for-a-pull-request" }, "parameters": [ { @@ -645046,96 +655711,47 @@ "schema": { "type": "integer" } + }, + { + "name": "review_id", + "description": "The unique identifier of the review.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } } ], "requestBody": { - "required": false, + "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { - "commit_id": { - "type": "string", - "description": "The SHA of the commit that needs a review. Not using the latest commit SHA may render your review comment outdated if a subsequent commit modifies the line you specify as the `position`. Defaults to the most recent commit in the pull request when you do not specify a value." - }, - "body": { + "message": { "type": "string", - "description": "**Required** when using `REQUEST_CHANGES` or `COMMENT` for the `event` parameter. The body text of the pull request review." + "description": "The message for the pull request review dismissal" }, "event": { "type": "string", - "description": "The review action you want to perform. The review actions include: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. By leaving this blank, you set the review action state to `PENDING`, which means you will need to [submit the pull request review](https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request) when you are ready.", "enum": [ - "APPROVE", - "REQUEST_CHANGES", - "COMMENT" + "DISMISS" + ], + "examples": [ + "\"DISMISS\"" ] - }, - "comments": { - "type": "array", - "description": "Use the following table to specify the location, destination, and contents of the draft review comment.", - "items": { - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The relative path to the file that necessitates a review comment." - }, - "position": { - "type": "integer", - "description": "The position in the diff where you want to add a review comment. Note this value is not the same as the line number in the file. The `position` value equals the number of lines down from the first \"@@\" hunk header in the file you want to add a comment. The line just below the \"@@\" line is position 1, the next line is position 2, and so on. The position in the diff continues to increase through lines of whitespace and additional hunks until the beginning of a new file." - }, - "body": { - "type": "string", - "description": "Text of the review comment." - }, - "line": { - "type": "integer", - "examples": [ - 28 - ] - }, - "side": { - "type": "string", - "examples": [ - "RIGHT" - ] - }, - "start_line": { - "type": "integer", - "examples": [ - 26 - ] - }, - "start_side": { - "type": "string", - "examples": [ - "LEFT" - ] - } - }, - "required": [ - "path", - "body" - ] - } } - } + }, + "required": [ + "message" + ] }, "examples": { "default": { "value": { - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "body": "This is close to perfect! Please address the suggested inline change.", - "event": "REQUEST_CHANGES", - "comments": [ - { - "path": "file.md", - "position": 6, - "body": "Please add more information here, and fix this typo." - } - ] + "message": "You are dismissed", + "event": "DISMISS" } } } @@ -645476,8 +656092,8 @@ "type": "User", "site_admin": false }, - "body": "This is close to perfect! Please address the suggested inline change.", - "state": "CHANGES_REQUESTED", + "body": "Here is the body for the review.", + "state": "DISMISSED", "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", "_links": { @@ -645497,18 +656113,14 @@ } } }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", + "404": { + "description": "Resource not found", "content": { "application/json": { "schema": { - "title": "Validation Error Simple", - "description": "Validation Error Simple", + "title": "Basic Error", + "description": "Basic Error", "type": "object", - "required": [ - "message", - "documentation_url" - ], "properties": { "message": { "type": "string" @@ -645516,25 +656128,29 @@ "documentation_url": { "type": "string" }, - "errors": { - "type": "array", - "items": { - "type": "string" - } + "url": { + "type": "string" + }, + "status": { + "type": "string" } } } } } }, - "403": { - "description": "Forbidden", + "422": { + "description": "Validation failed, or the endpoint has been spammed.", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", + "title": "Validation Error Simple", + "description": "Validation Error Simple", "type": "object", + "required": [ + "message", + "documentation_url" + ], "properties": { "message": { "type": "string" @@ -645542,11 +656158,11 @@ "documentation_url": { "type": "string" }, - "url": { - "type": "string" - }, - "status": { - "type": "string" + "errors": { + "type": "array", + "items": { + "type": "string" + } } } } @@ -645555,7 +656171,6 @@ } }, "x-github": { - "triggersNotification": true, "githubCloudOnly": false, "enabledForGitHubApps": true, "category": "pulls", @@ -645563,17 +656178,17 @@ } } }, - "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}": { - "get": { - "summary": "Get a review for a pull request", - "description": "Retrieves a pull request review by its ID.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events": { + "post": { + "summary": "Submit a review for a pull request", + "description": "Submits a pending review for a pull request. For more information about creating a pending review for a pull request, see \"[Create a review for a pull request](https://docs.github.com/rest/pulls/reviews#create-a-review-for-a-pull-request).\"\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", "tags": [ "pulls" ], - "operationId": "pulls/get-review", + "operationId": "pulls/submit-review", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#get-a-review-for-a-pull-request" + "url": "https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request" }, "parameters": [ { @@ -645613,6 +656228,42 @@ } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "body": { + "type": "string", + "description": "The body text of the pull request review" + }, + "event": { + "type": "string", + "description": "The review action you want to perform. The review actions include: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. When you leave this blank, the API returns _HTTP 422 (Unrecognizable entity)_ and sets the review action state to `PENDING`, which means you will need to re-submit the pull request review using a review action.", + "enum": [ + "APPROVE", + "REQUEST_CHANGES", + "COMMENT" + ] + } + }, + "required": [ + "event" + ] + }, + "examples": { + "default": { + "value": { + "body": "Here is the body for the review.", + "event": "REQUEST_CHANGES" + } + } + } + } + } + }, "responses": { "200": { "description": "Response", @@ -645993,6 +656644,62 @@ } } } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error Simple", + "description": "Validation Error Simple", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } } }, "x-github": { @@ -646001,17 +656708,19 @@ "category": "pulls", "subcategory": "reviews" } - }, + } + }, + "/repos/{owner}/{repo}/pulls/{pull_number}/update-branch": { "put": { - "summary": "Update a review for a pull request", - "description": "Updates the contents of a specified review summary comment.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "summary": "Update a pull request branch", + "description": "Updates the pull request branch with the latest upstream changes by merging HEAD from the base branch into the pull request branch.\nNote: If making a request on behalf of a GitHub App you must also have permissions to write the contents of the head repository.", "tags": [ "pulls" ], - "operationId": "pulls/update-review", + "operationId": "pulls/update-branch", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#update-a-review-for-a-pull-request" + "url": "https://docs.github.com/rest/pulls/pulls#update-a-pull-request-branch" }, "parameters": [ { @@ -646040,392 +656749,676 @@ "schema": { "type": "integer" } - }, - { - "name": "review_id", - "description": "The unique identifier of the review.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } } ], "requestBody": { - "required": true, + "required": false, "content": { "application/json": { "schema": { - "type": "object", + "type": [ + "object", + "null" + ], "properties": { - "body": { + "expected_head_sha": { "type": "string", - "description": "The body text of the pull request review." + "description": "The expected SHA of the pull request's HEAD ref. This is the most recent commit on the pull request's branch. If the expected SHA does not match the pull request's HEAD, you will receive a `422 Unprocessable Entity` status. You can use the \"[List commits](https://docs.github.com/rest/commits/commits#list-commits)\" endpoint to find the most recent commit SHA. Default: SHA of the pull request's current HEAD ref." } - }, - "required": [ - "body" - ] + } }, "examples": { "default": { "value": { - "body": "This is close to perfect! Please address the suggested inline change. And add more about this." + "expected_head_sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e" + } + } + } + } + } + }, + "responses": { + "202": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "url": { + "type": "string" + } + } + }, + "examples": { + "default": { + "value": { + "message": "Updating pull request branch.", + "url": "https://github.com/repos/octocat/Hello-World/pulls/53" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } } } } } } }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": false, + "category": "pulls", + "subcategory": "pulls" + } + } + }, + "/repos/{owner}/{repo}/readme": { + "get": { + "summary": "Get a repository README", + "description": "Gets the preferred README for a repository.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw file contents. This is the default if you do not specify a media type.\n- **`application/vnd.github.html+json`**: Returns the README in HTML. Markup languages are rendered to HTML using GitHub's open-source [Markup library](https://github.com/github/markup).", + "tags": [ + "repos" + ], + "operationId": "repos/get-readme", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/contents#get-a-repository-readme" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ref", + "description": "The name of the commit/branch/tag. Default: the repository’s default branch.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], "responses": { "200": { "description": "Response", "content": { "application/json": { "schema": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", + "title": "Content File", + "description": "Content File", "type": "object", "properties": { - "id": { - "description": "Unique identifier of the review", - "type": "integer", - "format": "int64", + "type": { + "type": "string", + "enum": [ + "file" + ] + }, + "encoding": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "content": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "git_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "html_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "download_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "_links": { + "type": "object", + "properties": { + "git": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "html": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "self": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "git", + "html", + "self" + ] + }, + "target": { + "type": "string", "examples": [ - 42 + "\"actual/actual.md\"" ] }, - "node_id": { + "submodule_git_url": { "type": "string", "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + "\"git://example.com/defunkt/dotjs.git\"" ] + } + }, + "required": [ + "_links", + "git_url", + "html_url", + "download_url", + "name", + "path", + "sha", + "size", + "type", + "url", + "content", + "encoding" + ] + }, + "examples": { + "default": { + "value": { + "type": "file", + "encoding": "base64", + "size": 5362, + "name": "README.md", + "path": "README.md", + "content": "encoded content ...", + "sha": "3d21ec53a331a6f037a91c368710b99387d012c1", + "url": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", + "git_url": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", + "html_url": "https://github.com/octokit/octokit.rb/blob/master/README.md", + "download_url": "https://raw.githubusercontent.com/octokit/octokit.rb/master/README.md", + "_links": { + "git": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", + "self": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", + "html": "https://github.com/octokit/octokit.rb/blob/master/README.md" + } + } + } + } + } + } + }, + "304": { + "description": "Not modified" + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "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" - ] + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } } - ] - }, - "body": { - "description": "The text of the review.", + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "contents" + } + } + }, + "/repos/{owner}/{repo}/readme/{dir}": { + "get": { + "summary": "Get a repository README for a directory", + "description": "Gets the README from a repository directory.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw file contents. This is the default if you do not specify a media type.\n- **`application/vnd.github.html+json`**: Returns the README in HTML. Markup languages are rendered to HTML using GitHub's open-source [Markup library](https://github.com/github/markup).", + "tags": [ + "repos" + ], + "operationId": "repos/get-readme-in-directory", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/contents#get-a-repository-readme-for-a-directory" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "dir", + "description": "The alternate path to look for a README file", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "x-multi-segment": true + }, + { + "name": "ref", + "description": "The name of the commit/branch/tag. Default: the repository’s default branch.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Content File", + "description": "Content File", + "type": "object", + "properties": { + "type": { "type": "string", - "examples": [ - "This looks great." + "enum": [ + "file" ] }, - "state": { + "encoding": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "path": { + "type": "string" + }, + "content": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "url": { "type": "string", - "examples": [ - "CHANGES_REQUESTED" - ] + "format": "uri" + }, + "git_url": { + "type": [ + "string", + "null" + ], + "format": "uri" }, "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - ] + "type": [ + "string", + "null" + ], + "format": "uri" }, - "pull_request_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" - ] + "download_url": { + "type": [ + "string", + "null" + ], + "format": "uri" }, "_links": { "type": "object", "properties": { + "git": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, "html": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] + "type": [ + "string", + "null" + ], + "format": "uri" }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] + "self": { + "type": "string", + "format": "uri" } }, "required": [ + "git", "html", - "pull_request" + "self" ] }, - "submitted_at": { + "target": { "type": "string", - "format": "date-time" - }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", - "type": [ - "string", - "null" - ], "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" + "\"actual/actual.md\"" ] }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "author_association": { - "title": "author_association", + "submodule_git_url": { "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], "examples": [ - "OWNER" + "\"git://example.com/defunkt/dotjs.git\"" ] } }, "required": [ - "id", - "node_id", - "user", - "body", - "state", - "commit_id", - "html_url", - "pull_request_url", "_links", - "author_association" + "git_url", + "html_url", + "download_url", + "name", + "path", + "sha", + "size", + "type", + "url", + "content", + "encoding" ] }, "examples": { "default": { "value": { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "This is close to perfect! Please address the suggested inline change. And add more about this.", - "state": "CHANGES_REQUESTED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", + "type": "file", + "encoding": "base64", + "size": 5362, + "name": "README.md", + "path": "README.md", + "content": "encoded content ...", + "sha": "3d21ec53a331a6f037a91c368710b99387d012c1", + "url": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", + "git_url": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", + "html_url": "https://github.com/octokit/octokit.rb/blob/master/README.md", + "download_url": "https://raw.githubusercontent.com/octokit/octokit.rb/master/README.md", "_links": { - "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" - } - }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" + "git": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", + "self": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", + "html": "https://github.com/octokit/octokit.rb/blob/master/README.md" + } + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" } } } @@ -646437,8 +657430,8 @@ "content": { "application/json": { "schema": { - "title": "Validation Error Simple", - "description": "Validation Error Simple", + "title": "Validation Error", + "description": "Validation Error", "type": "object", "required": [ "message", @@ -646454,7 +657447,52 @@ "errors": { "type": "array", "items": { - "type": "string" + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } } } } @@ -646466,20 +657504,22 @@ "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" + "category": "repos", + "subcategory": "contents" } - }, - "delete": { - "summary": "Delete a pending review for a pull request", - "description": "Deletes a pull request review that has not been submitted. Submitted reviews cannot be deleted.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + } + }, + "/repos/{owner}/{repo}/releases": { + "get": { + "summary": "List releases", + "description": "This returns a list of releases, which does not include regular Git tags that have not been associated with a release. To get a list of Git tags, use the [Repository Tags API](https://docs.github.com/rest/repos/repos#list-repository-tags).\n\nInformation about published releases are available to everyone. Only users with push access will receive listings for draft releases.", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/delete-pending-review", + "operationId": "repos/list-releases", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#delete-a-pending-review-for-a-pull-request" + "url": "https://docs.github.com/rest/releases/releases#list-releases" }, "parameters": [ { @@ -646501,21 +657541,21 @@ } }, { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", "schema": { - "type": "integer" + "type": "integer", + "default": 30 } }, { - "name": "review_id", - "description": "The unique identifier of the review.", - "in": "path", - "required": true, + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", "schema": { - "type": "integer" + "type": "integer", + "default": 1 } } ], @@ -646525,381 +657565,713 @@ "content": { "application/json": { "schema": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the review", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" - ] - }, - "user": { - "anyOf": [ - { - "type": "null" + "type": "array", + "items": { + "title": "Release", + "description": "A release.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "assets_url": { + "type": "string", + "format": "uri" + }, + "upload_url": { + "type": "string" + }, + "tarball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "zipball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "tag_name": { + "description": "The name of the tag.", + "type": "string", + "examples": [ + "v1.0.0" + ] + }, + "target_commitish": { + "description": "Specifies the commitish value that determines where the Git tag is created from.", + "type": "string", + "examples": [ + "master" + ] + }, + "name": { + "type": [ + "string", + "null" + ] + }, + "body": { + "type": [ + "string", + "null" + ] + }, + "draft": { + "description": "true to create a draft (unpublished) release, false to create a published one.", + "type": "boolean", + "examples": [ + false + ] + }, + "prerelease": { + "description": "Whether to identify the release as a prerelease or a full release.", + "type": "boolean", + "examples": [ + false + ] + }, + "immutable": { + "description": "Whether or not the release is immutable.", + "type": "boolean", + "examples": [ + false + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "author": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - { - "title": "Simple User", - "description": "A GitHub user.", + "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" + ] + }, + "assets": { + "type": "array", + "items": { + "title": "Release Asset", + "description": "Data related to a release.", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] + "url": { + "type": "string", + "format": "uri" }, - "login": { + "browser_download_url": { "type": "string", - "examples": [ - "octocat" - ] + "format": "uri" }, "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + "type": "integer" }, "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] + "type": "string" }, - "avatar_url": { + "name": { + "description": "The file name of the asset.", "type": "string", - "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "Team Environment" ] }, - "gravatar_id": { + "label": { "type": [ "string", "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" ] }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { + "state": { + "description": "State of the release asset.", "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "enum": [ + "uploaded", + "open" ] }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + "content_type": { + "type": "string" }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "size": { + "type": "integer" }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "digest": { + "type": [ + "string", + "null" ] }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "download_count": { + "type": "integer" }, - "type": { + "created_at": { "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" + "format": "date-time" }, - "starred_at": { + "updated_at": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "format": "date-time" }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "uploader": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } ] } }, "required": [ - "avatar_url", - "events_url", - "followers_url", - "following_url", - "gists_url", - "gravatar_id", - "html_url", "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", "node_id", - "login", - "organizations_url", - "received_events_url", - "repos_url", - "site_admin", - "starred_url", - "subscriptions_url", - "type", - "url" + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" ] } - ] - }, - "body": { - "description": "The text of the review.", - "type": "string", - "examples": [ - "This looks great." - ] - }, - "state": { - "type": "string", - "examples": [ - "CHANGES_REQUESTED" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - ] - }, - "pull_request_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" - ] - }, - "_links": { - "type": "object", - "properties": { - "html": { - "type": "object", - "properties": { - "href": { - "type": "string" - } + }, + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "mentions_count": { + "type": "integer" + }, + "discussion_url": { + "description": "The URL of the release discussion.", + "type": "string", + "format": "uri" + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" }, - "required": [ - "href" - ] - }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string" - } + "total_count": { + "type": "integer" }, - "required": [ - "href" - ] - } - }, - "required": [ - "html", - "pull_request" - ] - }, - "submitted_at": { - "type": "string", - "format": "date-time" - }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", - "type": [ - "string", - "null" - ], - "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" - ] - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" + } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" + ] + } }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" - ] - } - }, - "required": [ - "id", - "node_id", - "user", - "body", - "state", - "commit_id", - "html_url", - "pull_request_url", - "_links", - "author_association" - ] + "required": [ + "assets_url", + "upload_url", + "tarball_url", + "zipball_url", + "created_at", + "published_at", + "draft", + "id", + "node_id", + "author", + "html_url", + "name", + "prerelease", + "tag_name", + "target_commitish", + "assets", + "url" + ] + } }, "examples": { "default": { - "value": { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", - "user": { - "login": "octocat", + "value": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", + "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", + "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", + "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", + "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "This is close to perfect! Please address the suggested inline change.", - "state": "CHANGES_REQUESTED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", - "_links": { - "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" + "node_id": "MDc6UmVsZWFzZTE=", + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "immutable": false, + "created_at": "2013-02-27T19:35:32Z", + "published_at": "2013-02-27T19:35:32Z", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" - } - }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" - } + "assets": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } + } + ] + } + ] } } } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", "schema": { - "title": "Validation Error Simple", - "description": "Validation Error Simple", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "string" - } - } - } + "type": "string" } } } @@ -646934,22 +658306,20 @@ "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" + "category": "releases", + "subcategory": "releases" } - } - }, - "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments": { - "get": { - "summary": "List comments for a pull request review", - "description": "Lists comments for a specific pull request review.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + }, + "post": { + "summary": "Create a release", + "description": "Users with push access to the repository can create a release.\n\n> [!NOTE]\n> If the commit identified by `target_commitish` (or, when `target_commitish` is omitted, the latest commit on the default branch) adds or modifies any file under `.github/workflows/` relative to the repository's default branch, the authenticating token must be authorized to modify workflows. Otherwise, this endpoint returns `404 Not Found`; some authentication paths surface `403 Resource not accessible by integration` instead.\n\nOAuth app tokens and personal access tokens (classic) need the `workflow` scope when the resolved target commit modifies workflow files. Fine-grained access tokens and GitHub App installation tokens also need the \"Workflows\" repository permission (write). The `GITHUB_TOKEN` available to GitHub Actions cannot be authorized for this; for more information, see \"[Automatic token authentication](https://docs.github.com/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)\".\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/list-comments-for-review", + "operationId": "repos/create-release", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#list-comments-for-a-pull-request-review" + "url": "https://docs.github.com/rest/releases/releases#create-a-release" }, "parameters": [ { @@ -646969,610 +658339,788 @@ "schema": { "type": "string" } - }, - { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "review_id", - "description": "The unique identifier of the review.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "tag_name": { + "type": "string", + "description": "The name of the tag." + }, + "target_commitish": { + "type": "string", + "description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch." + }, + "name": { + "type": "string", + "description": "The name of the release." + }, + "body": { + "type": "string", + "description": "Text describing the contents of the tag." + }, + "draft": { + "type": "boolean", + "description": "`true` to create a draft (unpublished) release, `false` to create a published one.", + "default": false + }, + "prerelease": { + "type": "boolean", + "description": "`true` to identify the release as a prerelease. `false` to identify the release as a full release.", + "default": false + }, + "discussion_category_name": { + "type": "string", + "description": "If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository. For more information, see \"[Managing categories for discussions in your repository](https://docs.github.com/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository).\"" + }, + "generate_release_notes": { + "type": "boolean", + "description": "Whether to automatically generate the name and body for this release. If `name` is specified, the specified name will be used; otherwise, a name will be automatically generated. If `body` is specified, the body will be pre-pended to the automatically generated notes.", + "default": false + }, + "make_latest": { + "type": "string", + "description": "Specifies whether this release should be set as the latest release for the repository. Drafts and prereleases cannot be set as latest. Defaults to `true` for newly published releases. `legacy` specifies that the latest release should be determined based on the release creation date and higher semantic version.", + "enum": [ + "true", + "false", + "legacy" + ], + "default": "true" + } + }, + "required": [ + "tag_name" + ] + }, + "examples": { + "default": { + "value": { + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "generate_release_notes": false + } + } + } + } + } + }, "responses": { - "200": { + "201": { "description": "Response", "content": { "application/json": { "schema": { - "type": "array", - "items": { - "title": "Legacy Review Comment", - "description": "Legacy Review Comment", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - ] - }, - "pull_request_review_id": { - "type": [ - "integer", - "null" - ], - "format": "int64", - "examples": [ - 42 - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 10 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw" - ] - }, - "diff_hunk": { - "type": "string", - "examples": [ - "@@ -16,33 +16,40 @@ public class Connection : IConnection..." - ] - }, - "path": { - "type": "string", - "examples": [ - "file1.txt" - ] - }, - "position": { - "type": [ - "integer", - "null" - ], - "examples": [ - 1 - ] - }, - "original_position": { - "type": "integer", - "examples": [ - 4 - ] - }, - "commit_id": { - "type": "string", - "examples": [ - "6dcb09b5b57875f334f61aebed695e2e4193db5e" - ] - }, - "original_commit_id": { - "type": "string", - "examples": [ - "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840" - ] - }, - "in_reply_to_id": { - "type": "integer", - "examples": [ - 8 - ] - }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "body": { - "type": "string", - "examples": [ - "Great stuff" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-14T16:00:49Z" - ] - }, - "updated_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-04-14T16:00:49Z" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - ] - }, - "pull_request_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/1" - ] - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" - ] - }, - "_links": { - "type": "object", - "properties": { - "self": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "html": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "pull_request": { - "title": "Link", - "description": "Hypermedia Link", - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - } + "title": "Release", + "description": "A release.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "assets_url": { + "type": "string", + "format": "uri" + }, + "upload_url": { + "type": "string" + }, + "tarball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "zipball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "tag_name": { + "description": "The name of the tag.", + "type": "string", + "examples": [ + "v1.0.0" + ] + }, + "target_commitish": { + "description": "Specifies the commitish value that determines where the Git tag is created from.", + "type": "string", + "examples": [ + "master" + ] + }, + "name": { + "type": [ + "string", + "null" + ] + }, + "body": { + "type": [ + "string", + "null" + ] + }, + "draft": { + "description": "true to create a draft (unpublished) release, false to create a published one.", + "type": "boolean", + "examples": [ + false + ] + }, + "prerelease": { + "description": "Whether to identify the release as a prerelease or a full release.", + "type": "boolean", + "examples": [ + false + ] + }, + "immutable": { + "description": "Whether or not the release is immutable.", + "type": "boolean", + "examples": [ + false + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "author": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] }, - "required": [ - "self", - "html", - "pull_request" - ] - }, - "body_text": { - "type": "string" - }, - "body_html": { - "type": "string" + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - "reactions": { - "title": "Reaction Rollup", + "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" + ] + }, + "assets": { + "type": "array", + "items": { + "title": "Release Asset", + "description": "Data related to a release.", "type": "object", "properties": { "url": { "type": "string", "format": "uri" }, - "total_count": { - "type": "integer" + "browser_download_url": { + "type": "string", + "format": "uri" }, - "+1": { + "id": { "type": "integer" }, - "-1": { - "type": "integer" + "node_id": { + "type": "string" }, - "laugh": { - "type": "integer" + "name": { + "description": "The file name of the asset.", + "type": "string", + "examples": [ + "Team Environment" + ] }, - "confused": { - "type": "integer" + "label": { + "type": [ + "string", + "null" + ] }, - "heart": { - "type": "integer" + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] }, - "hooray": { - "type": "integer" + "content_type": { + "type": "string" }, - "eyes": { + "size": { "type": "integer" }, - "rocket": { + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] } }, "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - }, - "side": { - "description": "The side of the first line of the range for a multi-line comment.", - "enum": [ - "LEFT", - "RIGHT" - ], - "default": "RIGHT", - "type": "string" - }, - "start_side": { - "type": [ - "string", - "null" - ], - "description": "The side of the first line of the range for a multi-line comment.", - "enum": [ - "LEFT", - "RIGHT", - null - ], - "default": "RIGHT" - }, - "line": { - "description": "The line of the blob to which the comment applies. The last line of the range for a multi-line comment", - "type": "integer", - "examples": [ - 2 - ] - }, - "original_line": { - "description": "The original line of the blob to which the comment applies. The last line of the range for a multi-line comment", - "type": "integer", - "examples": [ - 2 - ] - }, - "start_line": { - "description": "The first line of the range for a multi-line comment.", - "type": [ - "integer", - "null" - ], - "examples": [ - 2 - ] - }, - "original_start_line": { - "description": "The original first line of the range for a multi-line comment.", - "type": [ - "integer", - "null" - ], - "examples": [ - 2 - ] - }, - "subject_type": { - "description": "The level at which the comment is targeted, can be a diff line or a file.", - "type": "string", - "enum": [ - "line", - "file" + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" ] } }, - "required": [ - "id", - "node_id", - "url", - "body", - "diff_hunk", - "path", - "position", - "original_position", - "commit_id", - "original_commit_id", - "user", - "pull_request_review_id", - "html_url", - "pull_request_url", - "_links", - "author_association", - "created_at", - "updated_at" - ] - } + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "mentions_count": { + "type": "integer" + }, + "discussion_url": { + "description": "The URL of the release discussion.", + "type": "string", + "format": "uri" + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" + } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" + ] + } + }, + "required": [ + "assets_url", + "upload_url", + "tarball_url", + "zipball_url", + "created_at", + "published_at", + "draft", + "id", + "node_id", + "author", + "html_url", + "name", + "prerelease", + "tag_name", + "target_commitish", + "assets", + "url" + ] }, "examples": { "default": { - "value": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1", - "pull_request_review_id": 42, - "id": 10, - "node_id": "MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDEw", - "diff_hunk": "@@ -16,33 +16,40 @@ public class Connection : IConnection...", - "path": "file1.txt", - "position": 1, - "original_position": 4, - "commit_id": "6dcb09b5b57875f334f61aebed695e2e4193db5e", - "original_commit_id": "9c48853fa3dc5c1c3d6f1f1cd1f2743e72652840", - "in_reply_to_id": 8, - "user": { - "login": "octocat", + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", + "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", + "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", + "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", + "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", + "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", + "id": 1, + "node_id": "MDc6UmVsZWFzZTE=", + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "immutable": false, + "created_at": "2013-02-27T19:35:32Z", + "published_at": "2013-02-27T19:35:32Z", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "assets": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "Great stuff!", - "created_at": "2011-04-14T16:00:49Z", - "updated_at": "2011-04-14T16:00:49Z", - "html_url": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/1", - "author_association": "NONE", - "_links": { - "self": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/1" - }, - "html": { - "href": "https://github.com/octocat/Hello-World/pull/1#discussion-diff-1" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/1" + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false } } - } - ] + ] + } } } } }, "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", + "Location": { + "example": "https://api.github.com/repos/octocat/Hello-World/releases/1", "schema": { "type": "string" } @@ -647580,7 +659128,7 @@ } }, "404": { - "description": "Resource not found", + "description": "Not Found if the discussion category name is invalid", "content": { "application/json": { "schema": { @@ -647604,27 +659152,103 @@ } } } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } } }, "x-github": { + "triggersNotification": true, "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" + "category": "releases", + "subcategory": "releases" } } }, - "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals": { - "put": { - "summary": "Dismiss a review for a pull request", - "description": "Dismisses a specified review on a pull request.\n\n> [!NOTE]\n> To dismiss a pull request review on a [protected branch](https://docs.github.com/rest/branches/branch-protection), you must be a repository administrator or be included in the list of people or teams who can dismiss pull request reviews.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + "/repos/{owner}/{repo}/releases/assets/{asset_id}": { + "get": { + "summary": "Get a release asset", + "description": "To download the asset's binary content:\n\n- If within a browser, fetch the location specified in the `browser_download_url` key provided in the response.\n- Alternatively, set the `Accept` header of the request to \n [`application/octet-stream`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types). \n The API will either redirect the client to the location, or stream it directly if possible.\n API clients should handle both a `200` or `302` response.", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/dismiss-review", + "operationId": "repos/get-release-asset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#dismiss-a-review-for-a-pull-request" + "url": "https://docs.github.com/rest/releases/assets#get-a-release-asset" }, "parameters": [ { @@ -647646,17 +659270,8 @@ } }, { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "review_id", - "description": "The unique identifier of the review.", + "name": "asset_id", + "description": "The unique identifier of the asset.", "in": "path", "required": true, "schema": { @@ -647664,67 +659279,75 @@ } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "The message for the pull request review dismissal" - }, - "event": { - "type": "string", - "enum": [ - "DISMISS" - ], - "examples": [ - "\"DISMISS\"" - ] - } - }, - "required": [ - "message" - ] - }, - "examples": { - "default": { - "value": { - "message": "You are dismissed", - "event": "DISMISS" - } - } - } - } - } - }, "responses": { "200": { "description": "Response", "content": { "application/json": { "schema": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", + "title": "Release Asset", + "description": "Data related to a release.", "type": "object", "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "browser_download_url": { + "type": "string", + "format": "uri" + }, "id": { - "description": "Unique identifier of the review", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] + "type": "integer" }, "node_id": { + "type": "string" + }, + "name": { + "description": "The file name of the asset.", "type": "string", "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + "Team Environment" ] }, - "user": { + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { "anyOf": [ { "type": "null" @@ -647898,123 +659521,42 @@ ] } ] - }, - "body": { - "description": "The text of the review.", - "type": "string", - "examples": [ - "This looks great." - ] - }, - "state": { - "type": "string", - "examples": [ - "CHANGES_REQUESTED" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - ] - }, - "pull_request_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" - ] - }, - "_links": { - "type": "object", - "properties": { - "html": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] - } - }, - "required": [ - "html", - "pull_request" - ] - }, - "submitted_at": { - "type": "string", - "format": "date-time" - }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", - "type": [ - "string", - "null" - ], - "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" - ] - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" - ] } }, "required": [ "id", - "node_id", - "user", - "body", + "name", + "content_type", + "size", + "digest", "state", - "commit_id", - "html_url", - "pull_request_url", - "_links", - "author_association" + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" ] }, "examples": { "default": { "value": { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", - "user": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -648026,29 +659568,14 @@ "following_url": "https://api.github.com/users/octocat/following{/other_user}", "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "body": "Here is the body for the review.", - "state": "DISMISSED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", - "_links": { - "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" - } - }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } } } } @@ -648081,56 +659608,27 @@ } } }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error Simple", - "description": "Validation Error Simple", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } + "302": { + "description": "Found" } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" + "category": "releases", + "subcategory": "assets" } - } - }, - "/repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events": { - "post": { - "summary": "Submit a review for a pull request", - "description": "Submits a pending review for a pull request. For more information about creating a pending review for a pull request, see \"[Create a review for a pull request](https://docs.github.com/rest/pulls/reviews#create-a-review-for-a-pull-request).\"\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github-commitcomment.raw+json`**: Returns the raw markdown body. Response will include `body`. This is the default if you do not pass any specific media type.\n- **`application/vnd.github-commitcomment.text+json`**: Returns a text only representation of the markdown body. Response will include `body_text`.\n- **`application/vnd.github-commitcomment.html+json`**: Returns HTML rendered from the body's markdown. Response will include `body_html`.\n- **`application/vnd.github-commitcomment.full+json`**: Returns raw, text, and HTML representations. Response will include `body`, `body_text`, and `body_html`.", + }, + "patch": { + "summary": "Update a release asset", + "description": "Users with push access to the repository can edit a release asset.", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/submit-review", + "operationId": "repos/update-release-asset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/reviews#submit-a-review-for-a-pull-request" + "url": "https://docs.github.com/rest/releases/assets#update-a-release-asset" }, "parameters": [ { @@ -648152,17 +659650,8 @@ } }, { - "name": "pull_number", - "description": "The number that identifies the pull request.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "review_id", - "description": "The unique identifier of the review.", + "name": "asset_id", + "description": "The unique identifier of the asset.", "in": "path", "required": true, "schema": { @@ -648171,35 +659660,33 @@ } ], "requestBody": { - "required": true, + "required": false, "content": { "application/json": { "schema": { "type": "object", "properties": { - "body": { + "name": { "type": "string", - "description": "The body text of the pull request review" + "description": "The file name of the asset." }, - "event": { + "label": { "type": "string", - "description": "The review action you want to perform. The review actions include: `APPROVE`, `REQUEST_CHANGES`, or `COMMENT`. When you leave this blank, the API returns _HTTP 422 (Unrecognizable entity)_ and sets the review action state to `PENDING`, which means you will need to re-submit the pull request review using a review action.", - "enum": [ - "APPROVE", - "REQUEST_CHANGES", - "COMMENT" + "description": "An alternate short description of the asset. Used in place of the filename." + }, + "state": { + "type": "string", + "examples": [ + "\"uploaded\"" ] } - }, - "required": [ - "event" - ] + } }, "examples": { "default": { "value": { - "body": "Here is the body for the review.", - "event": "REQUEST_CHANGES" + "name": "foo-1.0.0-osx.zip", + "label": "Mac binary" } } } @@ -648212,25 +659699,69 @@ "content": { "application/json": { "schema": { - "title": "Pull Request Review", - "description": "Pull Request Reviews are reviews on pull requests.", + "title": "Release Asset", + "description": "Data related to a release.", "type": "object", "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "browser_download_url": { + "type": "string", + "format": "uri" + }, "id": { - "description": "Unique identifier of the review", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] + "type": "integer" }, "node_id": { + "type": "string" + }, + "name": { + "description": "The file name of the asset.", "type": "string", "examples": [ - "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=" + "Team Environment" ] }, - "user": { + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { "anyOf": [ { "type": "null" @@ -648404,123 +659935,975 @@ ] } ] + } + }, + "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" + ] + }, + "examples": { + "default": { + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "releases", + "subcategory": "assets" + } + }, + "delete": { + "summary": "Delete a release asset", + "description": "", + "tags": [ + "repos" + ], + "operationId": "repos/delete-release-asset", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/releases/assets#delete-a-release-asset" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "asset_id", + "description": "The unique identifier of the asset.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "Response" + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "releases", + "subcategory": "assets" + } + } + }, + "/repos/{owner}/{repo}/releases/generate-notes": { + "post": { + "summary": "Generate release notes content for a release", + "description": "Generate a name and body describing a [release](https://docs.github.com/rest/releases/releases#get-a-release). The body content will be markdown formatted and contain information like the changes since last release and users who contributed. The generated release notes are not saved anywhere. They are intended to be generated and used when creating a new release.", + "tags": [ + "repos" + ], + "operationId": "repos/generate-release-notes", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/releases/releases#generate-release-notes-content-for-a-release" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "tag_name": { + "type": "string", + "description": "The tag name for the release. This can be an existing tag or a new one." + }, + "target_commitish": { + "type": "string", + "description": "Specifies the commitish value that will be the target for the release's tag. Required if the supplied tag_name does not reference an existing tag. Ignored if the tag_name already exists." + }, + "previous_tag_name": { + "type": "string", + "description": "The name of the previous tag to use as the starting point for the release notes. Use to manually specify the range for the set of changes considered as part this release." + }, + "configuration_file_path": { + "type": "string", + "description": "Specifies a path to a file in the repository containing configuration settings used for generating the release notes. If unspecified, the configuration file located in the repository at '.github/release.yml' or '.github/release.yaml' will be used. If that is not present, the default configuration will be used." + } + }, + "required": [ + "tag_name" + ] + }, + "examples": { + "default": { + "value": { + "tag_name": "v1.0.0", + "target_commitish": "main", + "previous_tag_name": "v0.9.2", + "configuration_file_path": ".github/custom_release_config.yml" + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Name and body of generated release notes", + "content": { + "application/json": { + "schema": { + "title": "Generated Release Notes Content", + "description": "Generated name and body describing a release", + "type": "object", + "properties": { + "name": { + "description": "The generated name of the release", + "type": "string", + "examples": [ + "Release v1.0.0 is now available!" + ] + }, + "body": { + "description": "The generated body describing the contents of the release supporting markdown formatting", + "type": "string" + } + }, + "required": [ + "name", + "body" + ] + }, + "examples": { + "default": { + "value": { + "name": "Release v1.0.0 is now available!", + "body": "##Changes in Release v1.0.0 ... ##Contributors @monalisa" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "releases", + "subcategory": "releases" + } + } + }, + "/repos/{owner}/{repo}/releases/latest": { + "get": { + "summary": "Get the latest release", + "description": "View the latest published full release for the repository.\n\nThe latest release is the most recent non-prerelease, non-draft release, sorted by the `created_at` attribute. The `created_at` attribute is the date of the commit used for the release, and not the date when the release was drafted or published.", + "tags": [ + "repos" + ], + "operationId": "repos/get-latest-release", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/releases/releases#get-the-latest-release" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Release", + "description": "A release.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "assets_url": { + "type": "string", + "format": "uri" + }, + "upload_url": { + "type": "string" + }, + "tarball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "zipball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "tag_name": { + "description": "The name of the tag.", + "type": "string", + "examples": [ + "v1.0.0" + ] + }, + "target_commitish": { + "description": "Specifies the commitish value that determines where the Git tag is created from.", + "type": "string", + "examples": [ + "master" + ] + }, + "name": { + "type": [ + "string", + "null" + ] + }, + "body": { + "type": [ + "string", + "null" + ] + }, + "draft": { + "description": "true to create a draft (unpublished) release, false to create a published one.", + "type": "boolean", + "examples": [ + false + ] + }, + "prerelease": { + "description": "Whether to identify the release as a prerelease or a full release.", + "type": "boolean", + "examples": [ + false + ] + }, + "immutable": { + "description": "Whether or not the release is immutable.", + "type": "boolean", + "examples": [ + false + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "author": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "assets": { + "type": "array", + "items": { + "title": "Release Asset", + "description": "Data related to a release.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "browser_download_url": { + "type": "string", + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "description": "The file name of the asset.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" + ] + } }, - "body": { - "description": "The text of the review.", - "type": "string", - "examples": [ - "This looks great." - ] + "body_html": { + "type": "string" }, - "state": { - "type": "string", - "examples": [ - "CHANGES_REQUESTED" - ] + "body_text": { + "type": "string" }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - ] + "mentions_count": { + "type": "integer" }, - "pull_request_url": { + "discussion_url": { + "description": "The URL of the release discussion.", "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/12" - ] + "format": "uri" }, - "_links": { + "reactions": { + "title": "Reaction Rollup", "type": "object", "properties": { - "html": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] + "url": { + "type": "string", + "format": "uri" }, - "pull_request": { - "type": "object", - "properties": { - "href": { - "type": "string" - } - }, - "required": [ - "href" - ] + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" } }, "required": [ - "html", - "pull_request" - ] - }, - "submitted_at": { - "type": "string", - "format": "date-time" - }, - "commit_id": { - "description": "A commit SHA for the review. If the commit object was garbage collected or forcibly deleted, then it no longer exists in Git and this value will be `null`.", - "type": [ - "string", - "null" - ], - "examples": [ - "54bb654c9e6025347f57900a4a5c2313a96b8035" - ] - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "author_association": { - "title": "author_association", - "type": "string", - "description": "How the author is associated with the repository.", - "enum": [ - "COLLABORATOR", - "CONTRIBUTOR", - "FIRST_TIMER", - "FIRST_TIME_CONTRIBUTOR", - "MANNEQUIN", - "MEMBER", - "NONE", - "OWNER" - ], - "examples": [ - "OWNER" + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" ] } }, "required": [ + "assets_url", + "upload_url", + "tarball_url", + "zipball_url", + "created_at", + "published_at", + "draft", "id", "node_id", - "user", - "body", - "state", - "commit_id", + "author", "html_url", - "pull_request_url", - "_links", - "author_association" + "name", + "prerelease", + "tag_name", + "target_commitish", + "assets", + "url" ] }, "examples": { "default": { "value": { - "id": 80, - "node_id": "MDE3OlB1bGxSZXF1ZXN0UmV2aWV3ODA=", - "user": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", + "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", + "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", + "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", + "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", + "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", + "id": 1, + "node_id": "MDc6UmVsZWFzZTE=", + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "immutable": false, + "created_at": "2013-02-27T19:35:32Z", + "published_at": "2013-02-27T19:35:32Z", + "author": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -648540,21 +660923,43 @@ "type": "User", "site_admin": false }, - "body": "Here is the body for the review.", - "state": "APPROVED", - "html_url": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80", - "pull_request_url": "https://api.github.com/repos/octocat/Hello-World/pulls/12", - "_links": { - "html": { - "href": "https://github.com/octocat/Hello-World/pull/12#pullrequestreview-80" - }, - "pull_request": { - "href": "https://api.github.com/repos/octocat/Hello-World/pulls/12" + "assets": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } } - }, - "submitted_at": "2019-11-17T17:43:43Z", - "commit_id": "ecdd80bb57125d7ba9641ffaa4d7d2c19d3f3091", - "author_association": "COLLABORATOR" + ] } } } @@ -648586,83 +660991,27 @@ } } } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error Simple", - "description": "Validation Error Simple", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "pulls", - "subcategory": "reviews" + "category": "releases", + "subcategory": "releases" } } }, - "/repos/{owner}/{repo}/pulls/{pull_number}/update-branch": { - "put": { - "summary": "Update a pull request branch", - "description": "Updates the pull request branch with the latest upstream changes by merging HEAD from the base branch into the pull request branch.\nNote: If making a request on behalf of a GitHub App you must also have permissions to write the contents of the head repository.", + "/repos/{owner}/{repo}/releases/tags/{tag}": { + "get": { + "summary": "Get a release by tag name", + "description": "Get a published release with the specified tag.", "tags": [ - "pulls" + "repos" ], - "operationId": "pulls/update-branch", + "operationId": "repos/get-release-by-tag", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/pulls/pulls#update-a-pull-request-branch" + "url": "https://docs.github.com/rest/releases/releases#get-a-release-by-tag-name" }, "parameters": [ { @@ -648684,362 +661033,721 @@ } }, { - "name": "pull_number", - "description": "The number that identifies the pull request.", + "name": "tag", + "description": "tag parameter", "in": "path", "required": true, "schema": { - "type": "integer" - } + "type": "string" + }, + "x-multi-segment": true } ], - "requestBody": { - "required": false, - "content": { - "application/json": { - "schema": { - "type": [ - "object", - "null" - ], - "properties": { - "expected_head_sha": { - "type": "string", - "description": "The expected SHA of the pull request's HEAD ref. This is the most recent commit on the pull request's branch. If the expected SHA does not match the pull request's HEAD, you will receive a `422 Unprocessable Entity` status. You can use the \"[List commits](https://docs.github.com/rest/commits/commits#list-commits)\" endpoint to find the most recent commit SHA. Default: SHA of the pull request's current HEAD ref." - } - } - }, - "examples": { - "default": { - "value": { - "expected_head_sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e" - } - } - } - } - } - }, "responses": { - "202": { + "200": { "description": "Response", "content": { "application/json": { "schema": { + "title": "Release", + "description": "A release.", "type": "object", "properties": { - "message": { - "type": "string" - }, "url": { - "type": "string" - } - } - }, - "examples": { - "default": { - "value": { - "message": "Updating pull request branch.", - "url": "https://github.com/repos/octocat/Hello-World/pulls/53" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "assets_url": { + "type": "string", + "format": "uri" + }, + "upload_url": { "type": "string" }, - "documentation_url": { + "tarball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "zipball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { "type": "string" }, - "errors": { + "tag_name": { + "description": "The name of the tag.", + "type": "string", + "examples": [ + "v1.0.0" + ] + }, + "target_commitish": { + "description": "Specifies the commitish value that determines where the Git tag is created from.", + "type": "string", + "examples": [ + "master" + ] + }, + "name": { + "type": [ + "string", + "null" + ] + }, + "body": { + "type": [ + "string", + "null" + ] + }, + "draft": { + "description": "true to create a draft (unpublished) release, false to create a published one.", + "type": "boolean", + "examples": [ + false + ] + }, + "prerelease": { + "description": "Whether to identify the release as a prerelease or a full release.", + "type": "boolean", + "examples": [ + false + ] + }, + "immutable": { + "description": "Whether or not the release is immutable.", + "type": "boolean", + "examples": [ + false + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "author": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "assets": { "type": "array", "items": { + "title": "Release Asset", + "description": "Data related to a release.", "type": "object", - "required": [ - "code" - ], "properties": { - "resource": { - "type": "string" + "url": { + "type": "string", + "format": "uri" }, - "field": { - "type": "string" + "browser_download_url": { + "type": "string", + "format": "uri" }, - "message": { + "id": { + "type": "integer" + }, + "node_id": { "type": "string" }, - "code": { + "name": { + "description": "The file name of the asset.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { "type": "string" }, - "index": { + "size": { "type": "integer" }, - "value": { - "oneOf": [ + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { + "anyOf": [ { - "type": [ - "string", - "null" - ] + "type": "null" }, { - "type": [ - "integer", - "null" + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } } ] } - } + }, + "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" + ] } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": false, - "category": "pulls", - "subcategory": "pulls" - } - } - }, - "/repos/{owner}/{repo}/readme": { - "get": { - "summary": "Get a repository README", - "description": "Gets the preferred README for a repository.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw file contents. This is the default if you do not specify a media type.\n- **`application/vnd.github.html+json`**: Returns the README in HTML. Markup languages are rendered to HTML using GitHub's open-source [Markup library](https://github.com/github/markup).", - "tags": [ - "repos" - ], - "operationId": "repos/get-readme", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/contents#get-a-repository-readme" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ref", - "description": "The name of the commit/branch/tag. Default: the repository’s default branch.", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Content File", - "description": "Content File", - "type": "object", - "properties": { - "type": { - "type": "string", - "enum": [ - "file" - ] - }, - "encoding": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "name": { - "type": "string" - }, - "path": { - "type": "string" - }, - "content": { - "type": "string" - }, - "sha": { - "type": "string" - }, - "url": { - "type": "string", - "format": "uri" }, - "git_url": { - "type": [ - "string", - "null" - ], - "format": "uri" + "body_html": { + "type": "string" }, - "html_url": { - "type": [ - "string", - "null" - ], - "format": "uri" + "body_text": { + "type": "string" }, - "download_url": { - "type": [ - "string", - "null" - ], + "mentions_count": { + "type": "integer" + }, + "discussion_url": { + "description": "The URL of the release discussion.", + "type": "string", "format": "uri" }, - "_links": { + "reactions": { + "title": "Reaction Rollup", "type": "object", "properties": { - "git": { - "type": [ - "string", - "null" - ], + "url": { + "type": "string", "format": "uri" }, - "html": { - "type": [ - "string", - "null" - ], - "format": "uri" + "total_count": { + "type": "integer" }, - "self": { - "type": "string", - "format": "uri" + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" } }, "required": [ - "git", - "html", - "self" - ] - }, - "target": { - "type": "string", - "examples": [ - "\"actual/actual.md\"" - ] - }, - "submodule_git_url": { - "type": "string", - "examples": [ - "\"git://example.com/defunkt/dotjs.git\"" + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" ] } }, "required": [ - "_links", - "git_url", + "assets_url", + "upload_url", + "tarball_url", + "zipball_url", + "created_at", + "published_at", + "draft", + "id", + "node_id", + "author", "html_url", - "download_url", "name", - "path", - "sha", - "size", - "type", - "url", - "content", - "encoding" + "prerelease", + "tag_name", + "target_commitish", + "assets", + "url" ] }, "examples": { "default": { "value": { - "type": "file", - "encoding": "base64", - "size": 5362, - "name": "README.md", - "path": "README.md", - "content": "encoded content ...", - "sha": "3d21ec53a331a6f037a91c368710b99387d012c1", - "url": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", - "git_url": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", - "html_url": "https://github.com/octokit/octokit.rb/blob/master/README.md", - "download_url": "https://raw.githubusercontent.com/octokit/octokit.rb/master/README.md", - "_links": { - "git": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", - "self": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", - "html": "https://github.com/octokit/octokit.rb/blob/master/README.md" - } + "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", + "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", + "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", + "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", + "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", + "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", + "id": 1, + "node_id": "MDc6UmVsZWFzZTE=", + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "immutable": false, + "created_at": "2013-02-27T19:35:32Z", + "published_at": "2013-02-27T19:35:32Z", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "assets": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } + } + ] } } } } } }, - "304": { - "description": "Not modified" - }, "404": { "description": "Resource not found", "content": { @@ -649065,102 +661773,27 @@ } } } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "contents" + "category": "releases", + "subcategory": "releases" } } }, - "/repos/{owner}/{repo}/readme/{dir}": { + "/repos/{owner}/{repo}/releases/{release_id}": { "get": { - "summary": "Get a repository README for a directory", - "description": "Gets the README from a repository directory.\n\nThis endpoint supports the following custom media types. For more information, see \"[Media types](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types).\"\n\n- **`application/vnd.github.raw+json`**: Returns the raw file contents. This is the default if you do not specify a media type.\n- **`application/vnd.github.html+json`**: Returns the README in HTML. Markup languages are rendered to HTML using GitHub's open-source [Markup library](https://github.com/github/markup).", + "summary": "Get a release", + "description": "Gets a public release with the specified release ID.\n\n> [!NOTE]\n> This returns an `upload_url` key corresponding to the endpoint for uploading release assets. This key is a hypermedia resource. For more information, see \"[Getting started with the REST API](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia).\"", "tags": [ "repos" ], - "operationId": "repos/get-readme-in-directory", + "operationId": "repos/get-release", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/contents#get-a-repository-readme-for-a-directory" + "url": "https://docs.github.com/rest/releases/releases#get-a-release" }, "parameters": [ { @@ -649182,1067 +661815,722 @@ } }, { - "name": "dir", - "description": "The alternate path to look for a README file", + "name": "release_id", + "description": "The unique identifier of the release.", "in": "path", "required": true, "schema": { - "type": "string" - }, - "x-multi-segment": true - }, - { - "name": "ref", - "description": "The name of the commit/branch/tag. Default: the repository’s default branch.", - "in": "query", - "required": false, - "schema": { - "type": "string" + "type": "integer" } } ], "responses": { "200": { - "description": "Response", + "description": "**Note:** This returns an `upload_url` key corresponding to the endpoint for uploading release assets. This key is a hypermedia resource. For more information, see \"[Getting started with the REST API](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia).\"", "content": { "application/json": { "schema": { - "title": "Content File", - "description": "Content File", + "title": "Release", + "description": "A release.", "type": "object", "properties": { - "type": { + "url": { "type": "string", - "enum": [ - "file" - ] + "format": "uri" }, - "encoding": { - "type": "string" + "html_url": { + "type": "string", + "format": "uri" }, - "size": { - "type": "integer" + "assets_url": { + "type": "string", + "format": "uri" }, - "name": { + "upload_url": { "type": "string" }, - "path": { - "type": "string" + "tarball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" }, - "content": { - "type": "string" + "zipball_url": { + "type": [ + "string", + "null" + ], + "format": "uri" }, - "sha": { + "id": { + "type": "integer" + }, + "node_id": { "type": "string" }, - "url": { + "tag_name": { + "description": "The name of the tag.", "type": "string", - "format": "uri" + "examples": [ + "v1.0.0" + ] }, - "git_url": { + "target_commitish": { + "description": "Specifies the commitish value that determines where the Git tag is created from.", + "type": "string", + "examples": [ + "master" + ] + }, + "name": { "type": [ "string", "null" - ], - "format": "uri" + ] }, - "html_url": { + "body": { + "type": [ + "string", + "null" + ] + }, + "draft": { + "description": "true to create a draft (unpublished) release, false to create a published one.", + "type": "boolean", + "examples": [ + false + ] + }, + "prerelease": { + "description": "Whether to identify the release as a prerelease or a full release.", + "type": "boolean", + "examples": [ + false + ] + }, + "immutable": { + "description": "Whether or not the release is immutable.", + "type": "boolean", + "examples": [ + false + ] + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "published_at": { "type": [ "string", "null" ], - "format": "uri" + "format": "date-time" }, - "download_url": { + "updated_at": { "type": [ "string", "null" ], - "format": "uri" + "format": "date-time" }, - "_links": { + "author": { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "git": { + "name": { "type": [ "string", "null" - ], - "format": "uri" + ] }, - "html": { + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { "type": [ "string", "null" ], - "format": "uri" + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] }, - "self": { + "url": { "type": "string", - "format": "uri" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } }, "required": [ - "git", - "html", - "self" - ] - }, - "target": { - "type": "string", - "examples": [ - "\"actual/actual.md\"" - ] - }, - "submodule_git_url": { - "type": "string", - "examples": [ - "\"git://example.com/defunkt/dotjs.git\"" + "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" ] - } - }, - "required": [ - "_links", - "git_url", - "html_url", - "download_url", - "name", - "path", - "sha", - "size", - "type", - "url", - "content", - "encoding" - ] - }, - "examples": { - "default": { - "value": { - "type": "file", - "encoding": "base64", - "size": 5362, - "name": "README.md", - "path": "README.md", - "content": "encoded content ...", - "sha": "3d21ec53a331a6f037a91c368710b99387d012c1", - "url": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", - "git_url": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", - "html_url": "https://github.com/octokit/octokit.rb/blob/master/README.md", - "download_url": "https://raw.githubusercontent.com/octokit/octokit.rb/master/README.md", - "_links": { - "git": "https://api.github.com/repos/octokit/octokit.rb/git/blobs/3d21ec53a331a6f037a91c368710b99387d012c1", - "self": "https://api.github.com/repos/octokit/octokit.rb/contents/README.md", - "html": "https://github.com/octokit/octokit.rb/blob/master/README.md" - } - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "contents" - } - } - }, - "/repos/{owner}/{repo}/releases": { - "get": { - "summary": "List releases", - "description": "This returns a list of releases, which does not include regular Git tags that have not been associated with a release. To get a list of Git tags, use the [Repository Tags API](https://docs.github.com/rest/repos/repos#list-repository-tags).\n\nInformation about published releases are available to everyone. Only users with push access will receive listings for draft releases.", - "tags": [ - "repos" - ], - "operationId": "repos/list-releases", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#list-releases" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Release", - "description": "A release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri" - }, - "assets_url": { - "type": "string", - "format": "uri" - }, - "upload_url": { - "type": "string" - }, - "tarball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "zipball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "tag_name": { - "description": "The name of the tag.", - "type": "string", - "examples": [ - "v1.0.0" - ] - }, - "target_commitish": { - "description": "Specifies the commitish value that determines where the Git tag is created from.", - "type": "string", - "examples": [ - "master" - ] - }, - "name": { - "type": [ - "string", - "null" - ] - }, - "body": { - "type": [ - "string", - "null" - ] - }, - "draft": { - "description": "true to create a draft (unpublished) release, false to create a published one.", - "type": "boolean", - "examples": [ - false - ] - }, - "prerelease": { - "description": "Whether to identify the release as a prerelease or a full release.", - "type": "boolean", - "examples": [ - false - ] - }, - "immutable": { - "description": "Whether or not the release is immutable.", - "type": "boolean", - "examples": [ - false - ] - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "author": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { + }, + "assets": { + "type": "array", + "items": { + "title": "Release Asset", + "description": "Data related to a release.", + "type": "object", + "properties": { + "url": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "format": "uri" }, - "received_events_url": { + "browser_download_url": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "format": "uri" }, - "type": { - "type": "string", - "examples": [ - "User" - ] + "id": { + "type": "integer" }, - "site_admin": { - "type": "boolean" + "node_id": { + "type": "string" }, - "starred_at": { + "name": { + "description": "The file name of the asset.", "type": "string", "examples": [ - "\"2020-07-09T00:17:55Z\"" + "Team Environment" ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "label": { + "type": [ + "string", + "null" ] - } - }, - "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" - ] - }, - "assets": { - "type": "array", - "items": { - "title": "Release Asset", - "description": "Data related to a release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "digest": { - "type": [ - "string", - "null" - ] - }, - "download_count": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "uploader": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - } }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" - ] - } - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "mentions_count": { - "type": "integer" - }, - "discussion_url": { - "description": "The URL of the release discussion.", - "type": "string", - "format": "uri" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { + "state": { + "description": "State of the release asset.", "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" + "enum": [ + "uploaded", + "open" + ] }, - "-1": { - "type": "integer" + "content_type": { + "type": "string" }, - "laugh": { + "size": { "type": "integer" }, - "confused": { - "type": "integer" + "digest": { + "type": [ + "string", + "null" + ] }, - "heart": { + "download_count": { "type": "integer" }, - "hooray": { - "type": "integer" + "created_at": { + "type": "string", + "format": "date-time" }, - "eyes": { - "type": "integer" + "updated_at": { + "type": "string", + "format": "date-time" }, - "rocket": { - "type": "integer" + "uploader": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] } }, "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" ] } }, - "required": [ - "assets_url", - "upload_url", - "tarball_url", - "zipball_url", - "created_at", - "published_at", - "draft", - "id", - "node_id", - "author", - "html_url", - "name", - "prerelease", - "tag_name", - "target_commitish", - "assets", - "url" - ] - } + "body_html": { + "type": "string" + }, + "body_text": { + "type": "string" + }, + "mentions_count": { + "type": "integer" + }, + "discussion_url": { + "description": "The URL of the release discussion.", + "type": "string", + "format": "uri" + }, + "reactions": { + "title": "Reaction Rollup", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "total_count": { + "type": "integer" + }, + "+1": { + "type": "integer" + }, + "-1": { + "type": "integer" + }, + "laugh": { + "type": "integer" + }, + "confused": { + "type": "integer" + }, + "heart": { + "type": "integer" + }, + "hooray": { + "type": "integer" + }, + "eyes": { + "type": "integer" + }, + "rocket": { + "type": "integer" + } + }, + "required": [ + "url", + "total_count", + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "eyes", + "rocket" + ] + } + }, + "required": [ + "assets_url", + "upload_url", + "tarball_url", + "zipball_url", + "created_at", + "published_at", + "draft", + "id", + "node_id", + "author", + "html_url", + "name", + "prerelease", + "tag_name", + "target_commitish", + "assets", + "url" + ] }, "examples": { "default": { - "value": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", - "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", - "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", - "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", + "value": { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", + "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", + "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", + "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", + "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", + "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", + "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", + "id": 1, + "node_id": "MDc6UmVsZWFzZTE=", + "tag_name": "v1.0.0", + "target_commitish": "master", + "name": "v1.0.0", + "body": "Description of the release", + "draft": false, + "prerelease": false, + "immutable": false, + "created_at": "2013-02-27T19:35:32Z", + "published_at": "2013-02-27T19:35:32Z", + "author": { + "login": "octocat", "id": 1, - "node_id": "MDc6UmVsZWFzZTE=", - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false, - "immutable": false, - "created_at": "2013-02-27T19:35:32Z", - "published_at": "2013-02-27T19:35:32Z", - "author": { - "login": "octocat", + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "assets": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "assets": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false } - ] - } - ] - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" + } + ] } } } } } + }, + "401": { + "description": "Unauthorized" } }, "x-github": { @@ -650252,16 +662540,16 @@ "subcategory": "releases" } }, - "post": { - "summary": "Create a release", - "description": "Users with push access to the repository can create a release.\n\n> [!NOTE]\n> If the commit identified by `target_commitish` (or, when `target_commitish` is omitted, the latest commit on the default branch) adds or modifies any file under `.github/workflows/` relative to the repository's default branch, the authenticating token must be authorized to modify workflows. Otherwise, this endpoint returns `404 Not Found`; some authentication paths surface `403 Resource not accessible by integration` instead.\n\nOAuth app tokens and personal access tokens (classic) need the `workflow` scope when the resolved target commit modifies workflow files. Fine-grained access tokens and GitHub App installation tokens also need the \"Workflows\" repository permission (write). The `GITHUB_TOKEN` available to GitHub Actions cannot be authorized for this; for more information, see \"[Automatic token authentication](https://docs.github.com/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)\".\n\nThis endpoint triggers [notifications](https://docs.github.com/github/managing-subscriptions-and-notifications-on-github/about-notifications). Creating content too quickly using this endpoint may result in secondary rate limiting. For more information, see \"[Rate limits for the API](https://docs.github.com/rest/using-the-rest-api/rate-limits-for-the-rest-api#about-secondary-rate-limits)\" and \"[Best practices for using the REST API](https://docs.github.com/rest/guides/best-practices-for-using-the-rest-api).\"", + "patch": { + "summary": "Update a release", + "description": "Users with push access to the repository can edit a release.\n\n> [!NOTE]\n> If the resolved target commit (the new value of `target_commitish` if you are changing it, otherwise the existing target) adds or modifies any file under `.github/workflows/` relative to the repository's default branch, the authenticating token must be authorized to modify workflows. Otherwise, this endpoint returns `404 Not Found`; some authentication paths surface `403 Resource not accessible by integration` instead.\n\nOAuth app tokens and personal access tokens (classic) need the `workflow` scope when the resolved target commit modifies workflow files. Fine-grained access tokens and GitHub App installation tokens also need the \"Workflows\" repository permission (write). The `GITHUB_TOKEN` available to GitHub Actions cannot be authorized for this; for more information, see \"[Automatic token authentication](https://docs.github.com/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)\".", "tags": [ "repos" ], - "operationId": "repos/create-release", + "operationId": "repos/update-release", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#create-a-release" + "url": "https://docs.github.com/rest/releases/releases#update-a-release" }, "parameters": [ { @@ -650281,10 +662569,19 @@ "schema": { "type": "string" } + }, + { + "name": "release_id", + "description": "The unique identifier of the release.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } } ], "requestBody": { - "required": true, + "required": false, "content": { "application/json": { "schema": { @@ -650308,22 +662605,11 @@ }, "draft": { "type": "boolean", - "description": "`true` to create a draft (unpublished) release, `false` to create a published one.", - "default": false + "description": "`true` makes the release a draft, and `false` publishes the release." }, "prerelease": { "type": "boolean", - "description": "`true` to identify the release as a prerelease. `false` to identify the release as a full release.", - "default": false - }, - "discussion_category_name": { - "type": "string", - "description": "If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository. For more information, see \"[Managing categories for discussions in your repository](https://docs.github.com/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository).\"" - }, - "generate_release_notes": { - "type": "boolean", - "description": "Whether to automatically generate the name and body for this release. If `name` is specified, the specified name will be used; otherwise, a name will be automatically generated. If `body` is specified, the body will be pre-pended to the automatically generated notes.", - "default": false + "description": "`true` to identify the release as a prerelease, `false` to identify the release as a full release." }, "make_latest": { "type": "string", @@ -650334,11 +662620,12 @@ "legacy" ], "default": "true" + }, + "discussion_category_name": { + "type": "string", + "description": "If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository. If there is already a discussion linked to the release, this parameter is ignored. For more information, see \"[Managing categories for discussions in your repository](https://docs.github.com/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository).\"" } - }, - "required": [ - "tag_name" - ] + } }, "examples": { "default": { @@ -650348,8 +662635,7 @@ "name": "v1.0.0", "body": "Description of the release", "draft": false, - "prerelease": false, - "generate_release_notes": false + "prerelease": false } } } @@ -650357,7 +662643,7 @@ } }, "responses": { - "201": { + "200": { "description": "Response", "content": { "application/json": { @@ -651059,14 +663345,6 @@ } } } - }, - "headers": { - "Location": { - "example": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "schema": { - "type": "string" - } - } } }, "404": { @@ -651094,76 +663372,79 @@ } } } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "releases", + "subcategory": "releases" + } + }, + "delete": { + "summary": "Delete a release", + "description": "Users with push access to the repository can delete a release.", + "tags": [ + "repos" + ], + "operationId": "repos/delete-release", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/releases/releases#delete-a-release" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "release_id", + "description": "The unique identifier of the release.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "Response" + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" } } } @@ -651172,7 +663453,6 @@ } }, "x-github": { - "triggersNotification": true, "githubCloudOnly": false, "enabledForGitHubApps": true, "category": "releases", @@ -651180,17 +663460,17 @@ } } }, - "/repos/{owner}/{repo}/releases/assets/{asset_id}": { + "/repos/{owner}/{repo}/releases/{release_id}/assets": { "get": { - "summary": "Get a release asset", - "description": "To download the asset's binary content:\n\n- If within a browser, fetch the location specified in the `browser_download_url` key provided in the response.\n- Alternatively, set the `Accept` header of the request to \n [`application/octet-stream`](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#media-types). \n The API will either redirect the client to the location, or stream it directly if possible.\n API clients should handle both a `200` or `302` response.", + "summary": "List release assets", + "description": "", "tags": [ "repos" ], - "operationId": "repos/get-release-asset", + "operationId": "repos/list-release-assets", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/assets#get-a-release-asset" + "url": "https://docs.github.com/rest/releases/assets#list-release-assets" }, "parameters": [ { @@ -651212,13 +663492,31 @@ } }, { - "name": "asset_id", - "description": "The unique identifier of the asset.", + "name": "release_id", + "description": "The unique identifier of the release.", "in": "path", "required": true, "schema": { "type": "integer" } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } } ], "responses": { @@ -651227,331 +663525,315 @@ "content": { "application/json": { "schema": { - "title": "Release Asset", - "description": "Data related to a release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "digest": { - "type": [ - "string", - "null" - ] - }, - "download_count": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "uploader": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "type": "array", + "items": { + "title": "Release Asset", + "description": "Data related to a release.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri" + }, + "browser_download_url": { + "type": "string", + "format": "uri" + }, + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "description": "The file name of the asset.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "label": { + "type": [ + "string", + "null" + ] + }, + "state": { + "description": "State of the release asset.", + "type": "string", + "enum": [ + "uploaded", + "open" + ] + }, + "content_type": { + "type": "string" + }, + "size": { + "type": "integer" + }, + "digest": { + "type": [ + "string", + "null" + ] + }, + "download_count": { + "type": "integer" + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + }, + "uploader": { + "anyOf": [ + { + "type": "null" }, - "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" - ] - } - ] - } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" - ] + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "id", + "name", + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" + ] + } }, "examples": { "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", + "value": [ + { + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } } - } + ] } } } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } + "type": "string" } } } - }, - "302": { - "description": "Found" } }, "x-github": { @@ -651561,17 +663843,23 @@ "subcategory": "assets" } }, - "patch": { - "summary": "Update a release asset", - "description": "Users with push access to the repository can edit a release asset.", + "post": { + "summary": "Upload a release asset", + "description": "This endpoint makes use of a [Hypermedia relation](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia) to determine which URL to access. The endpoint you call to upload release assets is specific to your release. Use the `upload_url` returned in\nthe response of the [Create a release endpoint](https://docs.github.com/rest/releases/releases#create-a-release) to upload a release asset.\n\nYou need to use an HTTP client which supports [SNI](http://en.wikipedia.org/wiki/Server_Name_Indication) to make calls to this endpoint.\n\nMost libraries will set the required `Content-Length` header automatically. Use the required `Content-Type` header to provide the media type of the asset. For a list of media types, see [Media Types](https://www.iana.org/assignments/media-types/media-types.xhtml). For example: \n\n`application/zip`\n\nGitHub expects the asset data in its raw binary form, rather than JSON. You will send the raw binary content of the asset as the request body. Everything else about the endpoint is the same as the rest of the API. For example,\nyou'll still need to pass your authentication to be able to upload an asset.\n\nWhen an upstream failure occurs, you will receive a `502 Bad Gateway` status. This may leave an empty asset with a state of `starter`. It can be safely deleted.\n\n**Notes:**\n* GitHub renames asset filenames that have special characters, non-alphanumeric characters, and leading or trailing periods. The \"[List release assets](https://docs.github.com/rest/releases/assets#list-release-assets)\"\nendpoint lists the renamed filenames. For more information and help, contact [GitHub Support](https://support.github.com/contact?tags=dotcom-rest-api).\n* To find the `release_id` query the [`GET /repos/{owner}/{repo}/releases/latest` endpoint](https://docs.github.com/rest/releases/releases#get-the-latest-release). \n* If you upload an asset with the same filename as another uploaded asset, you'll receive an error and must delete the old file before you can re-upload the new asset.", "tags": [ "repos" ], - "operationId": "repos/update-release-asset", + "operationId": "repos/upload-release-asset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/assets#update-a-release-asset" + "url": "https://docs.github.com/rest/releases/assets#upload-a-release-asset" }, + "servers": [ + { + "url": "https://uploads.github.com", + "description": "The URL origin (protocol + host name + port) is included in `upload_url` returned in the response of the \"Create a release\" endpoint" + } + ], "parameters": [ { "name": "owner", @@ -651592,52 +663880,50 @@ } }, { - "name": "asset_id", - "description": "The unique identifier of the asset.", + "name": "release_id", + "description": "The unique identifier of the release.", "in": "path", "required": true, "schema": { "type": "integer" } + }, + { + "name": "name", + "in": "query", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "label", + "in": "query", + "schema": { + "type": "string" + } } ], "requestBody": { "required": false, "content": { - "application/json": { + "application/octet-stream": { "schema": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The file name of the asset." - }, - "label": { - "type": "string", - "description": "An alternate short description of the asset. Used in place of the filename." - }, - "state": { - "type": "string", - "examples": [ - "\"uploaded\"" - ] - } - } + "type": "string", + "format": "binary", + "description": "The raw file data" }, "examples": { "default": { - "value": { - "name": "foo-1.0.0-osx.zip", - "label": "Mac binary" - } + "value": "@example.zip" } } } } }, "responses": { - "200": { - "description": "Response", + "201": { + "description": "Response for successful upload", "content": { "application/json": { "schema": { @@ -651836,352 +664122,131 @@ "type": { "type": "string", "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" - ] - }, - "examples": { - "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "assets" - } - }, - "delete": { - "summary": "Delete a release asset", - "description": "", - "tags": [ - "repos" - ], - "operationId": "repos/delete-release-asset", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/assets#delete-a-release-asset" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "asset_id", - "description": "The unique identifier of the asset.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "204": { - "description": "Response" - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "assets" - } - } - }, - "/repos/{owner}/{repo}/releases/generate-notes": { - "post": { - "summary": "Generate release notes content for a release", - "description": "Generate a name and body describing a [release](https://docs.github.com/rest/releases/releases#get-a-release). The body content will be markdown formatted and contain information like the changes since last release and users who contributed. The generated release notes are not saved anywhere. They are intended to be generated and used when creating a new release.", - "tags": [ - "repos" - ], - "operationId": "repos/generate-release-notes", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#generate-release-notes-content-for-a-release" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "tag_name": { - "type": "string", - "description": "The tag name for the release. This can be an existing tag or a new one." - }, - "target_commitish": { - "type": "string", - "description": "Specifies the commitish value that will be the target for the release's tag. Required if the supplied tag_name does not reference an existing tag. Ignored if the tag_name already exists." - }, - "previous_tag_name": { - "type": "string", - "description": "The name of the previous tag to use as the starting point for the release notes. Use to manually specify the range for the set of changes considered as part this release." - }, - "configuration_file_path": { - "type": "string", - "description": "Specifies a path to a file in the repository containing configuration settings used for generating the release notes. If unspecified, the configuration file located in the repository at '.github/release.yml' or '.github/release.yaml' will be used. If that is not present, the default configuration will be used." - } - }, - "required": [ - "tag_name" - ] - }, - "examples": { - "default": { - "value": { - "tag_name": "v1.0.0", - "target_commitish": "main", - "previous_tag_name": "v0.9.2", - "configuration_file_path": ".github/custom_release_config.yml" - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Name and body of generated release notes", - "content": { - "application/json": { - "schema": { - "title": "Generated Release Notes Content", - "description": "Generated name and body describing a release", - "type": "object", - "properties": { - "name": { - "description": "The generated name of the release", - "type": "string", - "examples": [ - "Release v1.0.0 is now available!" + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } ] - }, - "body": { - "description": "The generated body describing the contents of the release supporting markdown formatting", - "type": "string" } }, "required": [ + "id", "name", - "body" + "content_type", + "size", + "digest", + "state", + "url", + "node_id", + "download_count", + "label", + "uploader", + "browser_download_url", + "created_at", + "updated_at" ] }, "examples": { - "default": { + "response-for-successful-upload": { "value": { - "name": "Release v1.0.0 is now available!", - "body": "##Changes in Release v1.0.0 ... ##Contributors @monalisa" + "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", + "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "id": 1, + "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", + "name": "example.zip", + "label": "short description", + "state": "uploaded", + "content_type": "application/zip", + "size": 1024, + "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", + "download_count": 42, + "created_at": "2013-02-27T19:35:32Z", + "updated_at": "2013-02-27T19:35:32Z", + "uploader": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } } } } } } }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } + "422": { + "description": "Response if you upload an asset with the same filename as another uploaded asset" } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, "category": "releases", - "subcategory": "releases" + "subcategory": "assets" } } }, - "/repos/{owner}/{repo}/releases/latest": { + "/repos/{owner}/{repo}/releases/{release_id}/reactions": { "get": { - "summary": "Get the latest release", - "description": "View the latest published full release for the repository.\n\nThe latest release is the most recent non-prerelease, non-draft release, sorted by the `created_at` attribute. The `created_at` attribute is the date of the commit used for the release, and not the date when the release was drafted or published.", + "summary": "List reactions for a release", + "description": "List the reactions to a [release](https://docs.github.com/rest/releases/releases#get-a-release).", "tags": [ - "repos" + "reactions" ], - "operationId": "repos/get-latest-release", + "operationId": "reactions/list-for-release", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#get-the-latest-release" + "url": "https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-release" }, "parameters": [ { @@ -652201,6 +664266,50 @@ "schema": { "type": "string" } + }, + { + "name": "release_id", + "description": "The unique identifier of the release.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "content", + "description": "Returns a single [reaction type](https://docs.github.com/rest/reactions/reactions#about-reactions). Omit this parameter to list all reactions to a release.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "+1", + "laugh", + "heart", + "hooray", + "rocket", + "eyes" + ] + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } } ], "responses": { @@ -652209,703 +664318,274 @@ "content": { "application/json": { "schema": { - "title": "Release", - "description": "A release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri" - }, - "assets_url": { - "type": "string", - "format": "uri" - }, - "upload_url": { - "type": "string" - }, - "tarball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "zipball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "tag_name": { - "description": "The name of the tag.", - "type": "string", - "examples": [ - "v1.0.0" - ] - }, - "target_commitish": { - "description": "Specifies the commitish value that determines where the Git tag is created from.", - "type": "string", - "examples": [ - "master" - ] - }, - "name": { - "type": [ - "string", - "null" - ] - }, - "body": { - "type": [ - "string", - "null" - ] - }, - "draft": { - "description": "true to create a draft (unpublished) release, false to create a published one.", - "type": "boolean", - "examples": [ - false - ] - }, - "prerelease": { - "description": "Whether to identify the release as a prerelease or a full release.", - "type": "boolean", - "examples": [ - false - ] - }, - "immutable": { - "description": "Whether or not the release is immutable.", - "type": "boolean", - "examples": [ - false - ] - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "author": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "type": "array", + "items": { + "title": "Reaction", + "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", + "type": "object", + "properties": { + "id": { + "type": "integer", + "examples": [ + 1 + ] }, - "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" - ] - }, - "assets": { - "type": "array", - "items": { - "title": "Release Asset", - "description": "Data related to a release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "digest": { - "type": [ - "string", - "null" - ] - }, - "download_count": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" + "node_id": { + "type": "string", + "examples": [ + "MDg6UmVhY3Rpb24x" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" }, - "uploader": { - "anyOf": [ - { - "type": "null" + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } + }, + "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" ] } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" ] - } - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "mentions_count": { - "type": "integer" - }, - "discussion_url": { - "description": "The URL of the release discussion.", - "type": "string", - "format": "uri" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - } - }, - "required": [ - "assets_url", - "upload_url", - "tarball_url", - "zipball_url", - "created_at", - "published_at", - "draft", - "id", - "node_id", - "author", - "html_url", - "name", - "prerelease", - "tag_name", - "target_commitish", - "assets", - "url" - ] - }, - "examples": { - "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", - "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", - "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", - "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", - "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", - "id": 1, - "node_id": "MDc6UmVsZWFzZTE=", - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false, - "immutable": false, - "created_at": "2013-02-27T19:35:32Z", - "published_at": "2013-02-27T19:35:32Z", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "content": { + "description": "The reaction to use", + "type": "string", + "enum": [ + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "rocket", + "eyes" + ], + "examples": [ + "heart" + ] }, - "assets": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2016-05-20T20:09:31Z" + ] + } + }, + "required": [ + "id", + "node_id", + "user", + "content", + "created_at" + ] + } + }, + "examples": { + "default": { + "value": [ + { + "id": 1, + "node_id": "MDg6UmVhY3Rpb24x", + "user": { + "login": "octocat", "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } - } - ] - } + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "content": "heart", + "created_at": "2016-05-20T20:09:31Z" + } + ] } } } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } } }, "404": { @@ -652938,22 +664618,20 @@ "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" + "category": "reactions", + "subcategory": "reactions" } - } - }, - "/repos/{owner}/{repo}/releases/tags/{tag}": { - "get": { - "summary": "Get a release by tag name", - "description": "Get a published release with the specified tag.", + }, + "post": { + "summary": "Create reaction for a release", + "description": "Create a reaction to a [release](https://docs.github.com/rest/releases/releases#get-a-release). A response with a `Status: 200 OK` means that you already added the reaction type to this release.", "tags": [ - "repos" + "reactions" ], - "operationId": "repos/get-release-by-tag", + "operationId": "reactions/create-for-release", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#get-a-release-by-tag-name" + "url": "https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-release" }, "parameters": [ { @@ -652975,2341 +664653,2369 @@ } }, { - "name": "tag", - "description": "tag parameter", + "name": "release_id", + "description": "The unique identifier of the release.", "in": "path", "required": true, "schema": { - "type": "string" - }, - "x-multi-segment": true + "type": "integer" + } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "content": { + "type": "string", + "description": "The [reaction type](https://docs.github.com/rest/reactions/reactions#about-reactions) to add to the release.", + "enum": [ + "+1", + "laugh", + "heart", + "hooray", + "rocket", + "eyes" + ] + } + }, + "required": [ + "content" + ] + }, + "examples": { + "default": { + "value": { + "content": "heart" + } + } + } + } + } + }, "responses": { "200": { - "description": "Response", + "description": "Reaction exists", "content": { "application/json": { "schema": { - "title": "Release", - "description": "A release.", + "title": "Reaction", + "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", "type": "object", "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri" - }, - "assets_url": { - "type": "string", - "format": "uri" - }, - "upload_url": { - "type": "string" - }, - "tarball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "zipball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, "id": { - "type": "integer" + "type": "integer", + "examples": [ + 1 + ] }, "node_id": { - "type": "string" - }, - "tag_name": { - "description": "The name of the tag.", "type": "string", "examples": [ - "v1.0.0" + "MDg6UmVhY3Rpb24x" ] }, - "target_commitish": { - "description": "Specifies the commitish value that determines where the Git tag is created from.", + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "content": { + "description": "The reaction to use", "type": "string", + "enum": [ + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "rocket", + "eyes" + ], "examples": [ - "master" + "heart" ] }, - "name": { - "type": [ - "string", - "null" + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2016-05-20T20:09:31Z" ] - }, - "body": { - "type": [ - "string", - "null" + } + }, + "required": [ + "id", + "node_id", + "user", + "content", + "created_at" + ] + }, + "examples": { + "default": { + "value": { + "id": 1, + "node_id": "MDg6UmVhY3Rpb24x", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "content": "heart", + "created_at": "2016-05-20T20:09:31Z" + } + } + } + } + } + }, + "201": { + "description": "Reaction created", + "content": { + "application/json": { + "schema": { + "title": "Reaction", + "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", + "type": "object", + "properties": { + "id": { + "type": "integer", + "examples": [ + 1 ] }, - "draft": { - "description": "true to create a draft (unpublished) release, false to create a published one.", - "type": "boolean", + "node_id": { + "type": "string", "examples": [ - false + "MDg6UmVhY3Rpb24x" ] }, - "prerelease": { - "description": "Whether to identify the release as a prerelease or a full release.", - "type": "boolean", - "examples": [ - false + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } ] }, - "immutable": { - "description": "Whether or not the release is immutable.", - "type": "boolean", + "content": { + "description": "The reaction to use", + "type": "string", + "enum": [ + "+1", + "-1", + "laugh", + "confused", + "heart", + "hooray", + "rocket", + "eyes" + ], "examples": [ - false + "heart" ] }, "created_at": { "type": "string", - "format": "date-time" - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "author": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" + "format": "date-time", + "examples": [ + "2016-05-20T20:09:31Z" ] + } + }, + "required": [ + "id", + "node_id", + "user", + "content", + "created_at" + ] + }, + "examples": { + "default": { + "value": { + "id": 1, + "node_id": "MDg6UmVhY3Rpb24x", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "content": "heart", + "created_at": "2016-05-20T20:09:31Z" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" }, - "assets": { + "documentation_url": { + "type": "string" + }, + "errors": { "type": "array", "items": { - "title": "Release Asset", - "description": "Data related to a release.", "type": "object", + "required": [ + "code" + ], "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { + "resource": { "type": "string" }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] + "field": { + "type": "string" }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] + "message": { + "type": "string" }, - "content_type": { + "code": { "type": "string" }, - "size": { + "index": { "type": "integer" }, - "digest": { - "type": [ - "string", - "null" + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } ] + } + } + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "reactions", + "subcategory": "reactions" + } + } + }, + "/repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}": { + "delete": { + "summary": "Delete a release reaction", + "description": "> [!NOTE]\n> You can also specify a repository by `repository_id` using the route `DELETE delete /repositories/:repository_id/releases/:release_id/reactions/:reaction_id`.\n\nDelete a reaction to a [release](https://docs.github.com/rest/releases/releases#get-a-release).", + "tags": [ + "reactions" + ], + "operationId": "reactions/delete-for-release", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/reactions/reactions#delete-a-release-reaction" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "release_id", + "description": "The unique identifier of the release.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + }, + { + "name": "reaction_id", + "description": "The unique identifier of the reaction.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "204": { + "description": "Response" + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "reactions", + "subcategory": "reactions" + } + } + }, + "/repos/{owner}/{repo}/rules/branches/{branch}": { + "get": { + "summary": "Get rules for a branch", + "description": "Returns all active rules that apply to the specified branch. The branch does not need to exist; rules that would apply\nto a branch with that name will be returned. All active rules that apply will be returned, regardless of the level\nat which they are configured (e.g. repository or organization). Rules in rulesets with \"evaluate\" or \"disabled\"\nenforcement statuses are not returned.", + "tags": [ + "repos" + ], + "operationId": "repos/get-branch-rules", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/rules#get-rules-for-a-branch" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "branch", + "description": "The name of the branch. Cannot contain wildcard characters. To use wildcard characters in branch names, use [the GraphQL API](https://docs.github.com/graphql).", + "in": "path", + "required": true, + "schema": { + "type": "string" + }, + "x-multi-segment": true + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule with ruleset details.", + "oneOf": [ + { + "allOf": [ + { + "title": "creation", + "description": "Only allow users with bypass permission to create matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "creation" + ] + } + } }, - "download_count": { - "type": "integer" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "update", + "description": "Only allow users with bypass permission to update matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "update" + ] + }, + "parameters": { + "type": "object", + "properties": { + "update_allows_fetch_and_merge": { + "type": "boolean", + "description": "Branch can pull changes from its upstream repository" + } + }, + "required": [ + "update_allows_fetch_and_merge" + ] + } + } }, - "created_at": { - "type": "string", - "format": "date-time" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "deletion", + "description": "Only allow users with bypass permissions to delete matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "deletion" + ] + } + } }, - "updated_at": { - "type": "string", - "format": "date-time" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "required_linear_history", + "description": "Prevent merge commits from being pushed to matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_linear_history" + ] + } + } }, - "uploader": { - "anyOf": [ - { - "type": "null" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] }, - { - "title": "Simple User", - "description": "A GitHub user.", + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "merge_queue", + "description": "Merges must be performed via a merge queue.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "merge_queue" + ] + }, + "parameters": { "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] + "check_response_timeout_minutes": { + "type": "integer", + "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", + "minimum": 1, + "maximum": 360 }, - "login": { + "grouping_strategy": { "type": "string", - "examples": [ - "octocat" + "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", + "enum": [ + "ALLGREEN", + "HEADGREEN" ] }, - "id": { + "max_entries_to_build": { "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", + "minimum": 0, + "maximum": 100 }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] + "max_entries_to_merge": { + "type": "integer", + "description": "The maximum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 }, - "avatar_url": { + "merge_method": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "description": "Method to use when merging changes from queued pull requests.", + "enum": [ + "MERGE", + "SQUASH", + "REBASE" ] }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] + "min_entries_to_merge": { + "type": "integer", + "description": "The minimum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] + "min_entries_to_merge_wait_minutes": { + "type": "integer", + "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", + "minimum": 0, + "maximum": 360 + } + }, + "required": [ + "check_response_timeout_minutes", + "grouping_strategy", + "max_entries_to_build", + "max_entries_to_merge", + "merge_method", + "min_entries_to_merge", + "min_entries_to_merge_wait_minutes" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "required_deployments", + "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_deployments" + ] + }, + "parameters": { + "type": "object", + "properties": { + "required_deployment_environments": { + "type": "array", + "description": "The environments that must be successfully deployed to before branches can be merged.", + "items": { + "type": "string" + } + } + }, + "required": [ + "required_deployment_environments" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "required_signatures", + "description": "Commits pushed to matching refs must have verified signatures.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_signatures" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "pull_request", + "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "pull_request" + ] + }, + "parameters": { + "type": "object", + "properties": { + "allowed_merge_methods": { + "type": "array", + "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", + "items": { + "type": "string", + "enum": [ + "merge", + "squash", + "rebase" + ] + } }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] + "dismiss_stale_reviews_on_push": { + "type": "boolean", + "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" + "dismissal_restriction": { + "title": "DismissalRestriction", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "type": "object", + "properties": { + "allowed_actors": { + "type": "array", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "items": { + "title": "Actor", + "description": "An actor allowed to dismiss pull request reviews", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the actor that can dismiss reviews." + }, + "type": { + "type": "string", + "description": "The type of the actor", + "enum": [ + "User", + "Team", + "IntegrationInstallation", + "RepositoryRole" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether to restrict review dismissal to specific actors." + } + }, + "required": [ + "enabled" ] }, - "following_url": { + "require_code_owner_review": { + "type": "boolean", + "description": "Require an approving review in pull requests that modify files that have a designated code owner." + }, + "require_last_push_approval": { + "type": "boolean", + "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + }, + "required_approving_review_count": { + "type": "integer", + "description": "The number of approving reviews that are required before a pull request can be merged.", + "minimum": 0, + "maximum": 10 + }, + "required_review_thread_resolution": { + "type": "boolean", + "description": "All conversations on code must be resolved before a pull request can be merged." + }, + "required_reviewers": { + "type": "array", + "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", + "items": { + "title": "RequiredReviewerConfiguration", + "description": "A reviewing team, and file patterns describing which files they must approve changes to.", + "type": "object", + "properties": { + "file_patterns": { + "type": "array", + "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", + "items": { + "type": "string" + } + }, + "minimum_approvals": { + "type": "integer", + "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." + }, + "reviewer": { + "title": "Reviewer", + "description": "A required reviewing team", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the reviewer which must review changes to matching files." + }, + "type": { + "type": "string", + "description": "The type of the reviewer", + "enum": [ + "Team" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "required": [ + "file_patterns", + "minimum_approvals", + "reviewer" + ] + } + } + }, + "required": [ + "dismiss_stale_reviews_on_push", + "require_code_owner_review", + "require_last_push_approval", + "required_approving_review_count", + "required_review_thread_resolution" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "required_status_checks", + "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_status_checks" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "required_status_checks": { + "type": "array", + "description": "Status checks that are required.", + "items": { + "title": "StatusCheckConfiguration", + "description": "Required status check", + "type": "object", + "properties": { + "context": { + "type": "string", + "description": "The status check context name that must be present on the commit." + }, + "integration_id": { + "type": "integer", + "description": "The optional integration ID that this status check must originate from." + } + }, + "required": [ + "context" + ] + } + }, + "strict_required_status_checks_policy": { + "type": "boolean", + "description": "Whether 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." + } + }, + "required": [ + "required_status_checks", + "strict_required_status_checks_policy" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "non_fast_forward" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_message_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] + "description": "How this rule appears when configuring it." }, - "gists_url": { + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" ] }, - "starred_url": { + "pattern": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_author_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." }, - "subscriptions_url": { + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" ] }, - "organizations_url": { + "pattern": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "committer_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." }, - "repos_url": { + "operator": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" ] }, - "events_url": { + "pattern": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "branch_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." }, - "received_events_url": { + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" ] }, - "type": { + "pattern": { "type": "string", - "examples": [ - "User" - ] + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "tag_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." }, - "site_admin": { - "type": "boolean" + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." }, - "starred_at": { + "operator": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" ] }, - "user_view_type": { + "pattern": { "type": "string", - "examples": [ - "public" - ] + "description": "The pattern to match with." } }, "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" + "operator", + "pattern" ] } - ] + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" ] - } - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "mentions_count": { - "type": "integer" - }, - "discussion_url": { - "description": "The URL of the release discussion.", - "type": "string", - "format": "uri" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - } - }, - "required": [ - "assets_url", - "upload_url", - "tarball_url", - "zipball_url", - "created_at", - "published_at", - "draft", - "id", - "node_id", - "author", - "html_url", - "name", - "prerelease", - "tag_name", - "target_commitish", - "assets", - "url" - ] - }, - "examples": { - "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", - "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", - "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", - "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", - "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", - "id": 1, - "node_id": "MDc6UmVsZWFzZTE=", - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false, - "immutable": false, - "created_at": "2013-02-27T19:35:32Z", - "published_at": "2013-02-27T19:35:32Z", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false }, - "assets": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + { + "allOf": [ + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "workflows" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" + }, + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] + } + } + }, + "required": [ + "workflows" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } } - } - ] - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" - } - } - }, - "/repos/{owner}/{repo}/releases/{release_id}": { - "get": { - "summary": "Get a release", - "description": "Gets a public release with the specified release ID.\n\n> [!NOTE]\n> This returns an `upload_url` key corresponding to the endpoint for uploading release assets. This key is a hypermedia resource. For more information, see \"[Getting started with the REST API](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia).\"", - "tags": [ - "repos" - ], - "operationId": "repos/get-release", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#get-a-release" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "**Note:** This returns an `upload_url` key corresponding to the endpoint for uploading release assets. This key is a hypermedia resource. For more information, see \"[Getting started with the REST API](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia).\"", - "content": { - "application/json": { - "schema": { - "title": "Release", - "description": "A release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri" - }, - "assets_url": { - "type": "string", - "format": "uri" - }, - "upload_url": { - "type": "string" - }, - "tarball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "zipball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "tag_name": { - "description": "The name of the tag.", - "type": "string", - "examples": [ - "v1.0.0" - ] - }, - "target_commitish": { - "description": "Specifies the commitish value that determines where the Git tag is created from.", - "type": "string", - "examples": [ - "master" - ] - }, - "name": { - "type": [ - "string", - "null" - ] - }, - "body": { - "type": [ - "string", - "null" - ] - }, - "draft": { - "description": "true to create a draft (unpublished) release, false to create a published one.", - "type": "boolean", - "examples": [ - false - ] - }, - "prerelease": { - "description": "Whether to identify the release as a prerelease or a full release.", - "type": "boolean", - "examples": [ - false - ] - }, - "immutable": { - "description": "Whether or not the release is immutable.", - "type": "boolean", - "examples": [ - false - ] - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "author": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + ] }, - "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" - ] - }, - "assets": { - "type": "array", - "items": { - "title": "Release Asset", - "description": "Data related to a release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "digest": { - "type": [ - "string", - "null" - ] + { + "allOf": [ + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "code_scanning" + ] + }, + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] + }, + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] + } + } + }, + "required": [ + "code_scanning_tools" + ] + } + } }, - "download_count": { - "type": "integer" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "copilot_code_review" + ] + }, + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." + }, + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." + } + } + } + } }, - "created_at": { - "type": "string", - "format": "date-time" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "license_compliance_scanning" + ] + } + } }, - "updated_at": { - "type": "string", - "format": "date-time" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_path_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_paths" + ] + } + } }, - "uploader": { - "anyOf": [ - { - "type": "null" + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] }, - { - "title": "Simple User", - "description": "A GitHub user.", + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } + } + ] + }, + { + "allOf": [ + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_path_length" + ] + }, + "parameters": { "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { + "max_file_path_length": { "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 } }, "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" + "max_file_path_length" ] } - ] + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" ] - } - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "mentions_count": { - "type": "integer" - }, - "discussion_url": { - "description": "The URL of the release discussion.", - "type": "string", - "format": "uri" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - } - }, - "required": [ - "assets_url", - "upload_url", - "tarball_url", - "zipball_url", - "created_at", - "published_at", - "draft", - "id", - "node_id", - "author", - "html_url", - "name", - "prerelease", - "tag_name", - "target_commitish", - "assets", - "url" - ] - }, - "examples": { - "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", - "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", - "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", - "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", - "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", - "id": 1, - "node_id": "MDc6UmVsZWFzZTE=", - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false, - "immutable": false, - "created_at": "2013-02-27T19:35:32Z", - "published_at": "2013-02-27T19:35:32Z", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false }, - "assets": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + { + "allOf": [ + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_extension_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_extensions" + ] + } + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } } - } - ] - } - } - } - } - } - }, - "401": { - "description": "Unauthorized" - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" - } - }, - "patch": { - "summary": "Update a release", - "description": "Users with push access to the repository can edit a release.\n\n> [!NOTE]\n> If the resolved target commit (the new value of `target_commitish` if you are changing it, otherwise the existing target) adds or modifies any file under `.github/workflows/` relative to the repository's default branch, the authenticating token must be authorized to modify workflows. Otherwise, this endpoint returns `404 Not Found`; some authentication paths surface `403 Resource not accessible by integration` instead.\n\nOAuth app tokens and personal access tokens (classic) need the `workflow` scope when the resolved target commit modifies workflow files. Fine-grained access tokens and GitHub App installation tokens also need the \"Workflows\" repository permission (write). The `GITHUB_TOKEN` available to GitHub Actions cannot be authorized for this; for more information, see \"[Automatic token authentication](https://docs.github.com/actions/security-guides/automatic-token-authentication#permissions-for-the-github_token)\".", - "tags": [ - "repos" - ], - "operationId": "repos/update-release", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#update-a-release" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "requestBody": { - "required": false, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "tag_name": { - "type": "string", - "description": "The name of the tag." - }, - "target_commitish": { - "type": "string", - "description": "Specifies the commitish value that determines where the Git tag is created from. Can be any branch or commit SHA. Unused if the Git tag already exists. Default: the repository's default branch." - }, - "name": { - "type": "string", - "description": "The name of the release." - }, - "body": { - "type": "string", - "description": "Text describing the contents of the tag." - }, - "draft": { - "type": "boolean", - "description": "`true` makes the release a draft, and `false` publishes the release." - }, - "prerelease": { - "type": "boolean", - "description": "`true` to identify the release as a prerelease, `false` to identify the release as a full release." - }, - "make_latest": { - "type": "string", - "description": "Specifies whether this release should be set as the latest release for the repository. Drafts and prereleases cannot be set as latest. Defaults to `true` for newly published releases. `legacy` specifies that the latest release should be determined based on the release creation date and higher semantic version.", - "enum": [ - "true", - "false", - "legacy" - ], - "default": "true" - }, - "discussion_category_name": { - "type": "string", - "description": "If specified, a discussion of the specified category is created and linked to the release. The value must be a category that already exists in the repository. If there is already a discussion linked to the release, this parameter is ignored. For more information, see \"[Managing categories for discussions in your repository](https://docs.github.com/discussions/managing-discussions-for-your-community/managing-categories-for-discussions-in-your-repository).\"" - } - } - }, - "examples": { - "default": { - "value": { - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Release", - "description": "A release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri" - }, - "assets_url": { - "type": "string", - "format": "uri" - }, - "upload_url": { - "type": "string" - }, - "tarball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "zipball_url": { - "type": [ - "string", - "null" - ], - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "tag_name": { - "description": "The name of the tag.", - "type": "string", - "examples": [ - "v1.0.0" - ] - }, - "target_commitish": { - "description": "Specifies the commitish value that determines where the Git tag is created from.", - "type": "string", - "examples": [ - "master" - ] - }, - "name": { - "type": [ - "string", - "null" - ] - }, - "body": { - "type": [ - "string", - "null" - ] - }, - "draft": { - "description": "true to create a draft (unpublished) release, false to create a published one.", - "type": "boolean", - "examples": [ - false - ] - }, - "prerelease": { - "description": "Whether to identify the release as a prerelease or a full release.", - "type": "boolean", - "examples": [ - false - ] - }, - "immutable": { - "description": "Whether or not the release is immutable.", - "type": "boolean", - "examples": [ - false - ] - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time" - }, - "author": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + ] }, - "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" - ] - }, - "assets": { - "type": "array", - "items": { - "title": "Release Asset", - "description": "Data related to a release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "digest": { - "type": [ - "string", - "null" - ] - }, - "download_count": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "uploader": { - "anyOf": [ - { - "type": "null" + { + "allOf": [ + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_size" + ] }, - { - "title": "Simple User", - "description": "A GitHub user.", + "parameters": { "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { + "max_file_size": { "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 } }, "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" + "max_file_size" ] } - ] + } + }, + { + "title": "repository ruleset data for rule", + "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "properties": { + "ruleset_source_type": { + "type": "string", + "description": "The type of source for the ruleset that includes this rule.", + "enum": [ + "Repository", + "Organization" + ] + }, + "ruleset_source": { + "type": "string", + "description": "The name of the source of the ruleset that includes this rule." + }, + "ruleset_id": { + "type": "integer", + "description": "The ID of the ruleset that includes this rule." + } + } } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" ] } - }, - "body_html": { - "type": "string" - }, - "body_text": { - "type": "string" - }, - "mentions_count": { - "type": "integer" - }, - "discussion_url": { - "description": "The URL of the release discussion.", - "type": "string", - "format": "uri" - }, - "reactions": { - "title": "Reaction Rollup", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "total_count": { - "type": "integer" - }, - "+1": { - "type": "integer" - }, - "-1": { - "type": "integer" - }, - "laugh": { - "type": "integer" - }, - "confused": { - "type": "integer" - }, - "heart": { - "type": "integer" - }, - "hooray": { - "type": "integer" - }, - "eyes": { - "type": "integer" - }, - "rocket": { - "type": "integer" - } - }, - "required": [ - "url", - "total_count", - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "eyes", - "rocket" - ] - } - }, - "required": [ - "assets_url", - "upload_url", - "tarball_url", - "zipball_url", - "created_at", - "published_at", - "draft", - "id", - "node_id", - "author", - "html_url", - "name", - "prerelease", - "tag_name", - "target_commitish", - "assets", - "url" - ] + ] + } }, "examples": { "default": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/1", - "html_url": "https://github.com/octocat/Hello-World/releases/v1.0.0", - "assets_url": "https://api.github.com/repos/octocat/Hello-World/releases/1/assets", - "upload_url": "https://uploads.github.com/repos/octocat/Hello-World/releases/1/assets{?name,label}", - "tarball_url": "https://api.github.com/repos/octocat/Hello-World/tarball/v1.0.0", - "zipball_url": "https://api.github.com/repos/octocat/Hello-World/zipball/v1.0.0", - "discussion_url": "https://github.com/octocat/Hello-World/discussions/90", - "id": 1, - "node_id": "MDc6UmVsZWFzZTE=", - "tag_name": "v1.0.0", - "target_commitish": "master", - "name": "v1.0.0", - "body": "Description of the release", - "draft": false, - "prerelease": false, - "immutable": false, - "created_at": "2013-02-27T19:35:32Z", - "published_at": "2013-02-27T19:35:32Z", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "value": [ + { + "type": "commit_message_pattern", + "ruleset_source_type": "Repository", + "ruleset_source": "monalisa/my-repo", + "ruleset_id": 42, + "parameters": { + "operator": "starts_with", + "pattern": "issue" + } }, - "assets": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } + { + "type": "commit_author_email_pattern", + "ruleset_source_type": "Organization", + "ruleset_source": "my-org", + "ruleset_id": 73, + "parameters": { + "operator": "contains", + "pattern": "github" } - ] - } - } - } - } - } - }, - "404": { - "description": "Not Found if the discussion category name is invalid", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } + } + ] } } } @@ -655319,100 +667025,28 @@ "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" + "category": "repos", + "subcategory": "rules" } - }, - "delete": { - "summary": "Delete a release", - "description": "Users with push access to the repository can delete a release.", + } + }, + "/repos/{owner}/{repo}/rulesets": { + "get": { + "summary": "Get all repository rulesets", + "description": "Get all the rulesets for a repository.", "tags": [ "repos" ], - "operationId": "repos/delete-release", + "operationId": "repos/get-repo-rulesets", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/releases#delete-a-release" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "204": { - "description": "Response" - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } + "url": "https://docs.github.com/rest/repos/rules#get-all-repository-rulesets" }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "releases" - } - } - }, - "/repos/{owner}/{repo}/releases/{release_id}/assets": { - "get": { - "summary": "List release assets", - "description": "", - "tags": [ - "repos" - ], - "operationId": "repos/list-release-assets", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/assets#list-release-assets" + "category": "repos", + "subcategory": "rules" }, "parameters": [ { @@ -655433,15 +667067,6 @@ "type": "string" } }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, { "name": "per_page", "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", @@ -655459,6 +667084,28 @@ "type": "integer", "default": 1 } + }, + { + "name": "includes_parents", + "description": "Include rulesets configured at higher levels that apply to this repository", + "in": "query", + "required": false, + "schema": { + "type": "boolean", + "default": true + } + }, + { + "name": "targets", + "description": "A comma-separated list of rule targets to filter by.\nIf provided, only rulesets that apply to the specified targets will be returned.\nFor example, `branch,tag,push`.\n", + "in": "query", + "required": false, + "schema": { + "type": "string", + "examples": [ + "branch,tag,push" + ] + } } ], "responses": { @@ -655469,1069 +667116,1461 @@ "schema": { "type": "array", "items": { - "title": "Release Asset", - "description": "Data related to a release.", + "title": "Repository ruleset", "type": "object", + "description": "A set of rules to apply when specified conditions are met.", + "required": [ + "id", + "name", + "source", + "enforcement" + ], "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, "id": { - "type": "integer" - }, - "node_id": { - "type": "string" + "type": "integer", + "description": "The ID of the ruleset" }, "name": { - "description": "The file name of the asset.", "type": "string", - "examples": [ - "Team Environment" - ] + "description": "The name of the ruleset" }, - "label": { - "type": [ - "string", - "null" + "target": { + "type": "string", + "description": "The target of the ruleset", + "enum": [ + "branch", + "tag", + "push", + "repository" ] }, - "state": { - "description": "State of the release asset.", + "source_type": { "type": "string", + "description": "The type of the source of the ruleset", "enum": [ - "uploaded", - "open" + "Repository", + "Organization", + "Enterprise" ] }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" + "source": { + "type": "string", + "description": "The name of the source" }, - "digest": { - "type": [ - "string", - "null" + "enforcement": { + "type": "string", + "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "enum": [ + "disabled", + "active", + "evaluate" ] }, - "download_count": { - "type": "integer" + "bypass_actors": { + "type": "array", + "description": "The actors that can bypass the rules in this ruleset", + "items": { + "title": "Repository Ruleset Bypass Actor", + "type": "object", + "description": "An actor that can bypass rules in a ruleset", + "required": [ + "actor_type" + ], + "properties": { + "actor_id": { + "type": [ + "integer", + "null" + ], + "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." + }, + "actor_type": { + "type": "string", + "enum": [ + "Integration", + "OrganizationAdmin", + "RepositoryRole", + "Team", + "DeployKey", + "User" + ], + "description": "The type of actor that can bypass a ruleset." + }, + "bypass_mode": { + "type": "string", + "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", + "enum": [ + "always", + "pull_request", + "exempt" + ], + "default": "always" + } + } + } }, - "created_at": { + "current_user_can_bypass": { "type": "string", - "format": "date-time" + "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", + "enum": [ + "always", + "pull_requests_only", + "never", + "exempt" + ] }, - "updated_at": { - "type": "string", - "format": "date-time" + "node_id": { + "type": "string" }, - "uploader": { + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "The URL of the ruleset" + } + } + }, + "html": { + "type": [ + "object", + "null" + ], + "properties": { + "href": { + "type": "string", + "description": "The html URL of the ruleset" + } + } + } + } + }, + "conditions": { "anyOf": [ { - "type": "null" + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } }, { - "title": "Simple User", - "description": "A GitHub user.", + "title": "Organization ruleset conditions", "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" + "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", + "oneOf": [ + { + "type": "object", + "title": "repository_name_and_ref_name", + "description": "Conditions to target repositories by name and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository names", + "type": "object", + "description": "Parameters for a repository name condition", + "properties": { + "repository_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + }, + "protected": { + "type": "boolean", + "description": "Whether renaming of target repositories is prevented." + } + } + } + }, + "required": [ + "repository_name" + ] + } ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + { + "type": "object", + "title": "repository_id_and_ref_name", + "description": "Conditions to target repositories by id and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository IDs", + "type": "object", + "description": "Parameters for a repository ID condition", + "properties": { + "repository_id": { + "type": "object", + "properties": { + "repository_ids": { + "type": "array", + "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", + "items": { + "type": "integer" + } + } + } + } + }, + "required": [ + "repository_id" + ] + } ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + { + "type": "object", + "title": "repository_property_and_ref_name", + "description": "Conditions to target repositories by property and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository properties", + "type": "object", + "description": "Parameters for a repository property condition", + "properties": { + "repository_property": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", + "items": { + "title": "Repository ruleset property targeting definition", + "type": "object", + "description": "Parameters for a targeting a repository property", + "properties": { + "name": { + "type": "string", + "description": "The name of the repository property to target" + }, + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { + "type": "string", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", + "enum": [ + "custom", + "system" + ] + } + }, + "required": [ + "name", + "property_values" + ] + } + }, + "exclude": { + "type": "array", + "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", + "items": { + "title": "Repository ruleset property targeting definition", + "type": "object", + "description": "Parameters for a targeting a repository property", + "properties": { + "name": { + "type": "string", + "description": "The name of the repository property to target" + }, + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { + "type": "string", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", + "enum": [ + "custom", + "system" + ] + } + }, + "required": [ + "name", + "property_values" + ] + } + } + } + } + }, + "required": [ + "repository_property" + ] + } ] } - }, - "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" ] } + ], + "type": [ + "null", + "object" ] - } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" - ] - } - }, - "examples": { - "default": { - "value": [ - { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } - } - ] - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "assets" - } - }, - "post": { - "summary": "Upload a release asset", - "description": "This endpoint makes use of a [Hypermedia relation](https://docs.github.com/rest/using-the-rest-api/getting-started-with-the-rest-api#hypermedia) to determine which URL to access. The endpoint you call to upload release assets is specific to your release. Use the `upload_url` returned in\nthe response of the [Create a release endpoint](https://docs.github.com/rest/releases/releases#create-a-release) to upload a release asset.\n\nYou need to use an HTTP client which supports [SNI](http://en.wikipedia.org/wiki/Server_Name_Indication) to make calls to this endpoint.\n\nMost libraries will set the required `Content-Length` header automatically. Use the required `Content-Type` header to provide the media type of the asset. For a list of media types, see [Media Types](https://www.iana.org/assignments/media-types/media-types.xhtml). For example: \n\n`application/zip`\n\nGitHub expects the asset data in its raw binary form, rather than JSON. You will send the raw binary content of the asset as the request body. Everything else about the endpoint is the same as the rest of the API. For example,\nyou'll still need to pass your authentication to be able to upload an asset.\n\nWhen an upstream failure occurs, you will receive a `502 Bad Gateway` status. This may leave an empty asset with a state of `starter`. It can be safely deleted.\n\n**Notes:**\n* GitHub renames asset filenames that have special characters, non-alphanumeric characters, and leading or trailing periods. The \"[List release assets](https://docs.github.com/rest/releases/assets#list-release-assets)\"\nendpoint lists the renamed filenames. For more information and help, contact [GitHub Support](https://support.github.com/contact?tags=dotcom-rest-api).\n* To find the `release_id` query the [`GET /repos/{owner}/{repo}/releases/latest` endpoint](https://docs.github.com/rest/releases/releases#get-the-latest-release). \n* If you upload an asset with the same filename as another uploaded asset, you'll receive an error and must delete the old file before you can re-upload the new asset.", - "tags": [ - "repos" - ], - "operationId": "repos/upload-release-asset", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/releases/assets#upload-a-release-asset" - }, - "servers": [ - { - "url": "https://uploads.github.com", - "description": "The URL origin (protocol + host name + port) is included in `upload_url` returned in the response of the \"Create a release\" endpoint" - } - ], - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "name", - "in": "query", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "label", - "in": "query", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": false, - "content": { - "application/octet-stream": { - "schema": { - "type": "string", - "format": "binary", - "description": "The raw file data" - }, - "examples": { - "default": { - "value": "@example.zip" - } - } - } - } - }, - "responses": { - "201": { - "description": "Response for successful upload", - "content": { - "application/json": { - "schema": { - "title": "Release Asset", - "description": "Data related to a release.", - "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri" - }, - "browser_download_url": { - "type": "string", - "format": "uri" - }, - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "description": "The file name of the asset.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "label": { - "type": [ - "string", - "null" - ] - }, - "state": { - "description": "State of the release asset.", - "type": "string", - "enum": [ - "uploaded", - "open" - ] - }, - "content_type": { - "type": "string" - }, - "size": { - "type": "integer" - }, - "digest": { - "type": [ - "string", - "null" - ] - }, - "download_count": { - "type": "integer" - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - }, - "uploader": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", + }, + "rules": { + "type": "array", + "items": { + "title": "Repository Rule", "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] + "description": "A repository rule.", + "oneOf": [ + { + "title": "creation", + "description": "Only allow users with bypass permission to create matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "creation" + ] + } + } }, - "email": { - "type": [ - "string", - "null" - ] + { + "title": "update", + "description": "Only allow users with bypass permission to update matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "update" + ] + }, + "parameters": { + "type": "object", + "properties": { + "update_allows_fetch_and_merge": { + "type": "boolean", + "description": "Branch can pull changes from its upstream repository" + } + }, + "required": [ + "update_allows_fetch_and_merge" + ] + } + } }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] + { + "title": "deletion", + "description": "Only allow users with bypass permissions to delete matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "deletion" + ] + } + } }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + { + "title": "required_linear_history", + "description": "Prevent merge commits from being pushed to matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_linear_history" + ] + } + } }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] + { + "title": "merge_queue", + "description": "Merges must be performed via a merge queue.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "merge_queue" + ] + }, + "parameters": { + "type": "object", + "properties": { + "check_response_timeout_minutes": { + "type": "integer", + "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", + "minimum": 1, + "maximum": 360 + }, + "grouping_strategy": { + "type": "string", + "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", + "enum": [ + "ALLGREEN", + "HEADGREEN" + ] + }, + "max_entries_to_build": { + "type": "integer", + "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", + "minimum": 0, + "maximum": 100 + }, + "max_entries_to_merge": { + "type": "integer", + "description": "The maximum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "merge_method": { + "type": "string", + "description": "Method to use when merging changes from queued pull requests.", + "enum": [ + "MERGE", + "SQUASH", + "REBASE" + ] + }, + "min_entries_to_merge": { + "type": "integer", + "description": "The minimum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "min_entries_to_merge_wait_minutes": { + "type": "integer", + "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", + "minimum": 0, + "maximum": 360 + } + }, + "required": [ + "check_response_timeout_minutes", + "grouping_strategy", + "max_entries_to_build", + "max_entries_to_merge", + "merge_method", + "min_entries_to_merge", + "min_entries_to_merge_wait_minutes" + ] + } + } }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] + { + "title": "required_deployments", + "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_deployments" + ] + }, + "parameters": { + "type": "object", + "properties": { + "required_deployment_environments": { + "type": "array", + "description": "The environments that must be successfully deployed to before branches can be merged.", + "items": { + "type": "string" + } + } + }, + "required": [ + "required_deployment_environments" + ] + } + } }, - "gravatar_id": { - "type": [ - "string", - "null" + { + "title": "required_signatures", + "description": "Commits pushed to matching refs must have verified signatures.", + "type": "object", + "required": [ + "type" ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] + "properties": { + "type": { + "type": "string", + "enum": [ + "required_signatures" + ] + } + } }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] + { + "title": "pull_request", + "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "pull_request" + ] + }, + "parameters": { + "type": "object", + "properties": { + "allowed_merge_methods": { + "type": "array", + "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", + "items": { + "type": "string", + "enum": [ + "merge", + "squash", + "rebase" + ] + } + }, + "dismiss_stale_reviews_on_push": { + "type": "boolean", + "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." + }, + "dismissal_restriction": { + "title": "DismissalRestriction", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "type": "object", + "properties": { + "allowed_actors": { + "type": "array", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "items": { + "title": "Actor", + "description": "An actor allowed to dismiss pull request reviews", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the actor that can dismiss reviews." + }, + "type": { + "type": "string", + "description": "The type of the actor", + "enum": [ + "User", + "Team", + "IntegrationInstallation", + "RepositoryRole" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether to restrict review dismissal to specific actors." + } + }, + "required": [ + "enabled" + ] + }, + "require_code_owner_review": { + "type": "boolean", + "description": "Require an approving review in pull requests that modify files that have a designated code owner." + }, + "require_last_push_approval": { + "type": "boolean", + "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + }, + "required_approving_review_count": { + "type": "integer", + "description": "The number of approving reviews that are required before a pull request can be merged.", + "minimum": 0, + "maximum": 10 + }, + "required_review_thread_resolution": { + "type": "boolean", + "description": "All conversations on code must be resolved before a pull request can be merged." + }, + "required_reviewers": { + "type": "array", + "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", + "items": { + "title": "RequiredReviewerConfiguration", + "description": "A reviewing team, and file patterns describing which files they must approve changes to.", + "type": "object", + "properties": { + "file_patterns": { + "type": "array", + "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", + "items": { + "type": "string" + } + }, + "minimum_approvals": { + "type": "integer", + "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." + }, + "reviewer": { + "title": "Reviewer", + "description": "A required reviewing team", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the reviewer which must review changes to matching files." + }, + "type": { + "type": "string", + "description": "The type of the reviewer", + "enum": [ + "Team" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "required": [ + "file_patterns", + "minimum_approvals", + "reviewer" + ] + } + } + }, + "required": [ + "dismiss_stale_reviews_on_push", + "require_code_owner_review", + "require_last_push_approval", + "required_approving_review_count", + "required_review_thread_resolution" + ] + } + } }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] + { + "title": "required_status_checks", + "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_status_checks" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "required_status_checks": { + "type": "array", + "description": "Status checks that are required.", + "items": { + "title": "StatusCheckConfiguration", + "description": "Required status check", + "type": "object", + "properties": { + "context": { + "type": "string", + "description": "The status check context name that must be present on the commit." + }, + "integration_id": { + "type": "integer", + "description": "The optional integration ID that this status check must originate from." + } + }, + "required": [ + "context" + ] + } + }, + "strict_required_status_checks_policy": { + "type": "boolean", + "description": "Whether 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." + } + }, + "required": [ + "required_status_checks", + "strict_required_status_checks_policy" + ] + } + } }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] + { + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "non_fast_forward" + ] + } + } }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] + { + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_message_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] + { + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_author_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] + { + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "committer_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] + { + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "branch_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "tag_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "workflows" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" + }, + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] + } + } + }, + "required": [ + "workflows" + ] + } + } }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "code_scanning" + ] + }, + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] + }, + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] + } + } + }, + "required": [ + "code_scanning_tools" + ] + } + } }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "copilot_code_review" + ] + }, + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." + }, + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." + } + } + } + } }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "license_compliance_scanning" + ] + } + } }, - "type": { - "type": "string", - "examples": [ - "User" - ] + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_path_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_paths" + ] + } + } }, - "site_admin": { - "type": "boolean" + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_path_length" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } + }, + "required": [ + "max_file_path_length" + ] + } + } }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_extension_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_extensions" + ] + } + } }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_size" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_size": { + "type": "integer", + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 + } + }, + "required": [ + "max_file_size" + ] + } + } } - }, - "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" ] } - ] - } - }, - "required": [ - "id", - "name", - "content_type", - "size", - "digest", - "state", - "url", - "node_id", - "download_count", - "label", - "uploader", - "browser_download_url", - "created_at", - "updated_at" - ] - }, - "examples": { - "response-for-successful-upload": { - "value": { - "url": "https://api.github.com/repos/octocat/Hello-World/releases/assets/1", - "browser_download_url": "https://github.com/octocat/Hello-World/releases/download/v1.0.0/example.zip", - "id": 1, - "node_id": "MDEyOlJlbGVhc2VBc3NldDE=", - "name": "example.zip", - "label": "short description", - "state": "uploaded", - "content_type": "application/zip", - "size": 1024, - "digest": "sha256:2151b604e3429bff440b9fbc03eb3617bc2603cda96c95b9bb05277f9ddba255", - "download_count": 42, - "created_at": "2013-02-27T19:35:32Z", - "updated_at": "2013-02-27T19:35:32Z", - "uploader": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } - } - } - } - } - } - }, - "422": { - "description": "Response if you upload an asset with the same filename as another uploaded asset" - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "releases", - "subcategory": "assets" - } - } - }, - "/repos/{owner}/{repo}/releases/{release_id}/reactions": { - "get": { - "summary": "List reactions for a release", - "description": "List the reactions to a [release](https://docs.github.com/rest/releases/releases#get-a-release).", - "tags": [ - "reactions" - ], - "operationId": "reactions/list-for-release", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/reactions/reactions#list-reactions-for-a-release" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "content", - "description": "Returns a single [reaction type](https://docs.github.com/rest/reactions/reactions#about-reactions). Omit this parameter to list all reactions to a release.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "+1", - "laugh", - "heart", - "hooray", - "rocket", - "eyes" - ] - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Reaction", - "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDg6UmVhY3Rpb24x" - ] - }, - "user": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] }, - "content": { - "description": "The reaction to use", + "created_at": { "type": "string", - "enum": [ - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "rocket", - "eyes" - ], - "examples": [ - "heart" - ] + "format": "date-time" }, - "created_at": { + "updated_at": { "type": "string", - "format": "date-time", - "examples": [ - "2016-05-20T20:09:31Z" - ] + "format": "date-time" } - }, - "required": [ - "id", - "node_id", - "user", - "content", - "created_at" - ] + } } }, "examples": { "default": { "value": [ { - "id": 1, - "node_id": "MDg6UmVhY3Rpb24x", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "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" + } }, - "content": "heart", - "created_at": "2016-05-20T20:09:31Z" + "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" } ] } } } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { "schema": { - "type": "string" + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } } } } }, - "404": { - "description": "Resource not found", + "500": { + "description": "Internal Error", "content": { "application/json": { "schema": { @@ -656556,24 +668595,24 @@ } } } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "reactions", - "subcategory": "reactions" } }, "post": { - "summary": "Create reaction for a release", - "description": "Create a reaction to a [release](https://docs.github.com/rest/releases/releases#get-a-release). A response with a `Status: 200 OK` means that you already added the reaction type to this release.", + "summary": "Create a repository ruleset", + "description": "Create a ruleset for a repository.", "tags": [ - "reactions" + "repos" ], - "operationId": "reactions/create-for-release", + "operationId": "repos/create-repo-ruleset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/reactions/reactions#create-reaction-for-a-release" + "url": "https://docs.github.com/rest/repos/rules#create-a-repository-ruleset" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "rules" }, "parameters": [ { @@ -656593,797 +668632,1538 @@ "schema": { "type": "string" } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } } ], "requestBody": { + "description": "Request body", "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { - "content": { + "name": { "type": "string", - "description": "The [reaction type](https://docs.github.com/rest/reactions/reactions#about-reactions) to add to the release.", + "description": "The name of the ruleset." + }, + "target": { + "type": "string", + "description": "The target of the ruleset", "enum": [ - "+1", - "laugh", - "heart", - "hooray", - "rocket", - "eyes" + "branch", + "tag", + "push" + ], + "default": "branch" + }, + "enforcement": { + "type": "string", + "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "enum": [ + "disabled", + "active", + "evaluate" ] - } - }, - "required": [ - "content" - ] - }, - "examples": { - "default": { - "value": { - "content": "heart" - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Reaction exists", - "content": { - "application/json": { - "schema": { - "title": "Reaction", - "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDg6UmVhY3Rpb24x" - ] - }, - "user": { - "anyOf": [ - { - "type": "null" + }, + "bypass_actors": { + "type": "array", + "description": "The actors that can bypass the rules in this ruleset", + "items": { + "title": "Repository Ruleset Bypass Actor", + "type": "object", + "description": "An actor that can bypass rules in a ruleset", + "required": [ + "actor_type" + ], + "properties": { + "actor_id": { + "type": [ + "integer", + "null" + ], + "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." + }, + "actor_type": { + "type": "string", + "enum": [ + "Integration", + "OrganizationAdmin", + "RepositoryRole", + "Team", + "DeployKey", + "User" + ], + "description": "The type of actor that can bypass a ruleset." }, + "bypass_mode": { + "type": "string", + "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", + "enum": [ + "always", + "pull_request", + "exempt" + ], + "default": "always" + } + } + } + }, + "conditions": { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + "rules": { + "type": "array", + "description": "An array of rules within the ruleset.", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule.", + "oneOf": [ { - "title": "Simple User", - "description": "A GitHub user.", + "title": "creation", + "description": "Only allow users with bypass permission to create matching refs.", "type": "object", + "required": [ + "type" + ], "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { + "type": { "type": "string", - "examples": [ - "MDQ6VXNlcjE=" + "enum": [ + "creation" ] - }, - "avatar_url": { + } + } + }, + { + "title": "update", + "description": "Only allow users with bypass permission to update matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "enum": [ + "update" ] }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "parameters": { + "type": "object", + "properties": { + "update_allows_fetch_and_merge": { + "type": "boolean", + "description": "Branch can pull changes from its upstream repository" + } + }, + "required": [ + "update_allows_fetch_and_merge" ] - }, - "url": { + } + } + }, + { + "title": "deletion", + "description": "Only allow users with bypass permissions to delete matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" + "enum": [ + "deletion" ] - }, - "html_url": { + } + } + }, + { + "title": "required_linear_history", + "description": "Prevent merge commits from being pushed to matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" + "enum": [ + "required_linear_history" ] - }, - "followers_url": { + } + } + }, + { + "title": "merge_queue", + "description": "Merges must be performed via a merge queue.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" + "enum": [ + "merge_queue" ] }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "parameters": { + "type": "object", + "properties": { + "check_response_timeout_minutes": { + "type": "integer", + "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", + "minimum": 1, + "maximum": 360 + }, + "grouping_strategy": { + "type": "string", + "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", + "enum": [ + "ALLGREEN", + "HEADGREEN" + ] + }, + "max_entries_to_build": { + "type": "integer", + "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", + "minimum": 0, + "maximum": 100 + }, + "max_entries_to_merge": { + "type": "integer", + "description": "The maximum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "merge_method": { + "type": "string", + "description": "Method to use when merging changes from queued pull requests.", + "enum": [ + "MERGE", + "SQUASH", + "REBASE" + ] + }, + "min_entries_to_merge": { + "type": "integer", + "description": "The minimum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "min_entries_to_merge_wait_minutes": { + "type": "integer", + "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", + "minimum": 0, + "maximum": 360 + } + }, + "required": [ + "check_response_timeout_minutes", + "grouping_strategy", + "max_entries_to_build", + "max_entries_to_merge", + "merge_method", + "min_entries_to_merge", + "min_entries_to_merge_wait_minutes" ] - }, - "gists_url": { + } + } + }, + { + "title": "required_deployments", + "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "enum": [ + "required_deployments" ] }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "parameters": { + "type": "object", + "properties": { + "required_deployment_environments": { + "type": "array", + "description": "The environments that must be successfully deployed to before branches can be merged.", + "items": { + "type": "string" + } + } + }, + "required": [ + "required_deployment_environments" ] - }, - "subscriptions_url": { + } + } + }, + { + "title": "required_signatures", + "description": "Commits pushed to matching refs must have verified signatures.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "enum": [ + "required_signatures" ] - }, - "organizations_url": { + } + } + }, + { + "title": "pull_request", + "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" + "enum": [ + "pull_request" ] }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" + "parameters": { + "type": "object", + "properties": { + "allowed_merge_methods": { + "type": "array", + "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", + "items": { + "type": "string", + "enum": [ + "merge", + "squash", + "rebase" + ] + } + }, + "dismiss_stale_reviews_on_push": { + "type": "boolean", + "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." + }, + "dismissal_restriction": { + "title": "DismissalRestriction", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "type": "object", + "properties": { + "allowed_actors": { + "type": "array", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "items": { + "title": "Actor", + "description": "An actor allowed to dismiss pull request reviews", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the actor that can dismiss reviews." + }, + "type": { + "type": "string", + "description": "The type of the actor", + "enum": [ + "User", + "Team", + "IntegrationInstallation", + "RepositoryRole" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether to restrict review dismissal to specific actors." + } + }, + "required": [ + "enabled" + ] + }, + "require_code_owner_review": { + "type": "boolean", + "description": "Require an approving review in pull requests that modify files that have a designated code owner." + }, + "require_last_push_approval": { + "type": "boolean", + "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + }, + "required_approving_review_count": { + "type": "integer", + "description": "The number of approving reviews that are required before a pull request can be merged.", + "minimum": 0, + "maximum": 10 + }, + "required_review_thread_resolution": { + "type": "boolean", + "description": "All conversations on code must be resolved before a pull request can be merged." + }, + "required_reviewers": { + "type": "array", + "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", + "items": { + "title": "RequiredReviewerConfiguration", + "description": "A reviewing team, and file patterns describing which files they must approve changes to.", + "type": "object", + "properties": { + "file_patterns": { + "type": "array", + "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", + "items": { + "type": "string" + } + }, + "minimum_approvals": { + "type": "integer", + "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." + }, + "reviewer": { + "title": "Reviewer", + "description": "A required reviewing team", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the reviewer which must review changes to matching files." + }, + "type": { + "type": "string", + "description": "The type of the reviewer", + "enum": [ + "Team" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "required": [ + "file_patterns", + "minimum_approvals", + "reviewer" + ] + } + } + }, + "required": [ + "dismiss_stale_reviews_on_push", + "require_code_owner_review", + "require_last_push_approval", + "required_approving_review_count", + "required_review_thread_resolution" ] - }, - "events_url": { + } + } + }, + { + "title": "required_status_checks", + "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "enum": [ + "required_status_checks" ] }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "required_status_checks": { + "type": "array", + "description": "Status checks that are required.", + "items": { + "title": "StatusCheckConfiguration", + "description": "Required status check", + "type": "object", + "properties": { + "context": { + "type": "string", + "description": "The status check context name that must be present on the commit." + }, + "integration_id": { + "type": "integer", + "description": "The optional integration ID that this status check must originate from." + } + }, + "required": [ + "context" + ] + } + }, + "strict_required_status_checks_policy": { + "type": "boolean", + "description": "Whether 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." + } + }, + "required": [ + "required_status_checks", + "strict_required_status_checks_policy" ] - }, + } + } + }, + { + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { "type": { "type": "string", - "examples": [ - "User" + "enum": [ + "non_fast_forward" ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { + } + } + }, + { + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + "enum": [ + "commit_message_pattern" ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" ] } - }, - "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" - ] - } - ] - }, - "content": { - "description": "The reaction to use", - "type": "string", - "enum": [ - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "rocket", - "eyes" - ], - "examples": [ - "heart" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2016-05-20T20:09:31Z" - ] - } - }, - "required": [ - "id", - "node_id", - "user", - "content", - "created_at" - ] - }, - "examples": { - "default": { - "value": { - "id": 1, - "node_id": "MDg6UmVhY3Rpb24x", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "content": "heart", - "created_at": "2016-05-20T20:09:31Z" - } - } - } - } - } - }, - "201": { - "description": "Reaction created", - "content": { - "application/json": { - "schema": { - "title": "Reaction", - "description": "Reactions to conversations provide a way to help people express their feelings more simply and effectively.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDg6UmVhY3Rpb24x" - ] - }, - "user": { - "anyOf": [ - { - "type": "null" + } }, { - "title": "Simple User", - "description": "A GitHub user.", + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", "type": "object", + "required": [ + "type" + ], "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { + "type": { "type": "string", - "examples": [ - "octocat" + "enum": [ + "commit_author_email_pattern" ] }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" ] - }, - "node_id": { + } + } + }, + { + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "MDQ6VXNlcjE=" + "enum": [ + "committer_email_pattern" ] }, - "avatar_url": { + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "enum": [ + "branch_name_pattern" ] }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" ] - }, - "url": { + } + } + }, + { + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" + "enum": [ + "tag_name_pattern" ] }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" ] - }, - "followers_url": { + } + } + }, + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" + "enum": [ + "workflows" ] }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" + }, + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] + } + } + }, + "required": [ + "workflows" ] - }, - "gists_url": { + } + } + }, + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "enum": [ + "code_scanning" ] }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] + }, + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] + } + } + }, + "required": [ + "code_scanning_tools" ] - }, - "subscriptions_url": { + } + } + }, + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "enum": [ + "copilot_code_review" ] }, - "organizations_url": { + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." + }, + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." + } + } + } + } + }, + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" + "enum": [ + "license_compliance_scanning" ] - }, - "repos_url": { + } + } + }, + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" + "enum": [ + "file_path_restriction" ] }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_paths" ] - }, - "received_events_url": { + } + } + }, + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" + "enum": [ + "max_file_path_length" ] }, + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } + }, + "required": [ + "max_file_path_length" + ] + } + } + }, + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { "type": { "type": "string", - "examples": [ - "User" + "enum": [ + "file_extension_restriction" ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_extensions" + ] + } + } + }, + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + "enum": [ + "max_file_size" ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "parameters": { + "type": "object", + "properties": { + "max_file_size": { + "type": "integer", + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 + } + }, + "required": [ + "max_file_size" ] } - }, - "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" - ] + } } ] - }, - "content": { - "description": "The reaction to use", - "type": "string", - "enum": [ - "+1", - "-1", - "laugh", - "confused", - "heart", - "hooray", - "rocket", - "eyes" - ], - "examples": [ - "heart" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2016-05-20T20:09:31Z" - ] } - }, - "required": [ - "id", - "node_id", - "user", - "content", - "created_at" - ] + } }, - "examples": { - "default": { - "value": { - "id": 1, - "node_id": "MDg6UmVhY3Rpb24x", - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "content": "heart", - "created_at": "2016-05-20T20:09:31Z" - } + "required": [ + "name", + "enforcement" + ] + }, + "examples": { + "default": { + "value": { + "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" + } + } + ] } } } } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", + } + }, + "responses": { + "201": { + "description": "Response", "content": { "application/json": { "schema": { - "title": "Validation Error", - "description": "Validation Error", + "title": "Repository ruleset", "type": "object", + "description": "A set of rules to apply when specified conditions are met.", "required": [ - "message", - "documentation_url" + "id", + "name", + "source", + "enforcement" ], "properties": { - "message": { - "type": "string" + "id": { + "type": "integer", + "description": "The ID of the ruleset" }, - "documentation_url": { - "type": "string" + "name": { + "type": "string", + "description": "The name of the ruleset" }, - "errors": { + "target": { + "type": "string", + "description": "The target of the ruleset", + "enum": [ + "branch", + "tag", + "push", + "repository" + ] + }, + "source_type": { + "type": "string", + "description": "The type of the source of the ruleset", + "enum": [ + "Repository", + "Organization", + "Enterprise" + ] + }, + "source": { + "type": "string", + "description": "The name of the source" + }, + "enforcement": { + "type": "string", + "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "enum": [ + "disabled", + "active", + "evaluate" + ] + }, + "bypass_actors": { "type": "array", + "description": "The actors that can bypass the rules in this ruleset", "items": { + "title": "Repository Ruleset Bypass Actor", "type": "object", + "description": "An actor that can bypass rules in a ruleset", "required": [ - "code" + "actor_type" ], "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" + "actor_id": { + "type": [ + "integer", + "null" + ], + "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." }, - "index": { - "type": "integer" + "actor_type": { + "type": "string", + "enum": [ + "Integration", + "OrganizationAdmin", + "RepositoryRole", + "Team", + "DeployKey", + "User" + ], + "description": "The type of actor that can bypass a ruleset." }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" + "bypass_mode": { + "type": "string", + "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", + "enum": [ + "always", + "pull_request", + "exempt" + ], + "default": "always" + } + } + } + }, + "current_user_can_bypass": { + "type": "string", + "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", + "enum": [ + "always", + "pull_requests_only", + "never", + "exempt" + ] + }, + "node_id": { + "type": "string" + }, + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "The URL of the ruleset" + } + } + }, + "html": { + "type": [ + "object", + "null" + ], + "properties": { + "href": { + "type": "string", + "description": "The html URL of the ruleset" + } + } + } + } + }, + "conditions": { + "anyOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } } } - ] + } } + }, + { + "title": "Organization ruleset conditions", + "type": "object", + "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", + "oneOf": [ + { + "type": "object", + "title": "repository_name_and_ref_name", + "description": "Conditions to target repositories by name and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository names", + "type": "object", + "description": "Parameters for a repository name condition", + "properties": { + "repository_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + }, + "protected": { + "type": "boolean", + "description": "Whether renaming of target repositories is prevented." + } + } + } + }, + "required": [ + "repository_name" + ] + } + ] + }, + { + "type": "object", + "title": "repository_id_and_ref_name", + "description": "Conditions to target repositories by id and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository IDs", + "type": "object", + "description": "Parameters for a repository ID condition", + "properties": { + "repository_id": { + "type": "object", + "properties": { + "repository_ids": { + "type": "array", + "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", + "items": { + "type": "integer" + } + } + } + } + }, + "required": [ + "repository_id" + ] + } + ] + }, + { + "type": "object", + "title": "repository_property_and_ref_name", + "description": "Conditions to target repositories by property and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } + }, + { + "title": "Repository ruleset conditions for repository properties", + "type": "object", + "description": "Parameters for a repository property condition", + "properties": { + "repository_property": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", + "items": { + "title": "Repository ruleset property targeting definition", + "type": "object", + "description": "Parameters for a targeting a repository property", + "properties": { + "name": { + "type": "string", + "description": "The name of the repository property to target" + }, + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { + "type": "string", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", + "enum": [ + "custom", + "system" + ] + } + }, + "required": [ + "name", + "property_values" + ] + } + }, + "exclude": { + "type": "array", + "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", + "items": { + "title": "Repository ruleset property targeting definition", + "type": "object", + "description": "Parameters for a targeting a repository property", + "properties": { + "name": { + "type": "string", + "description": "The name of the repository property to target" + }, + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { + "type": "string", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", + "enum": [ + "custom", + "system" + ] + } + }, + "required": [ + "name", + "property_values" + ] + } + } + } + } + }, + "required": [ + "repository_property" + ] + } + ] + } + ] } - } - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "reactions", - "subcategory": "reactions" - } - } - }, - "/repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}": { - "delete": { - "summary": "Delete a release reaction", - "description": "> [!NOTE]\n> You can also specify a repository by `repository_id` using the route `DELETE delete /repositories/:repository_id/releases/:release_id/reactions/:reaction_id`.\n\nDelete a reaction to a [release](https://docs.github.com/rest/releases/releases#get-a-release).", - "tags": [ - "reactions" - ], - "operationId": "reactions/delete-for-release", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/reactions/reactions#delete-a-release-reaction" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "release_id", - "description": "The unique identifier of the release.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "reaction_id", - "description": "The unique identifier of the reaction.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "204": { - "description": "Response" - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "reactions", - "subcategory": "reactions" - } - } - }, - "/repos/{owner}/{repo}/rules/branches/{branch}": { - "get": { - "summary": "Get rules for a branch", - "description": "Returns all active rules that apply to the specified branch. The branch does not need to exist; rules that would apply\nto a branch with that name will be returned. All active rules that apply will be returned, regardless of the level\nat which they are configured (e.g. repository or organization). Rules in rulesets with \"evaluate\" or \"disabled\"\nenforcement statuses are not returned.", - "tags": [ - "repos" - ], - "operationId": "repos/get-branch-rules", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#get-rules-for-a-branch" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "branch", - "description": "The name of the branch. Cannot contain wildcard characters. To use wildcard characters in branch names, use [the GraphQL API](https://docs.github.com/graphql).", - "in": "path", - "required": true, - "schema": { - "type": "string" - }, - "x-multi-segment": true - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule with ruleset details.", - "oneOf": [ - { - "allOf": [ + ], + "type": [ + "null", + "object" + ] + }, + "rules": { + "type": "array", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule.", + "oneOf": [ { "title": "creation", "description": "Only allow users with bypass permission to create matching refs.", @@ -657400,32 +670180,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "update", "description": "Only allow users with bypass permission to update matching refs.", @@ -657454,32 +670208,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "deletion", "description": "Only allow users with bypass permissions to delete matching refs.", @@ -657496,32 +670224,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "required_linear_history", "description": "Prevent merge commits from being pushed to matching refs.", @@ -657538,32 +670240,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "merge_queue", "description": "Merges must be performed via a merge queue.", @@ -657637,36 +670313,10 @@ "merge_method", "min_entries_to_merge", "min_entries_to_merge_wait_minutes" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." + ] } } - } - ] - }, - { - "allOf": [ + }, { "title": "required_deployments", "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", @@ -657698,32 +670348,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "required_signatures", "description": "Commits pushed to matching refs must have verified signatures.", @@ -657740,32 +670364,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "pull_request", "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", @@ -657920,32 +670518,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "required_status_checks", "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", @@ -658001,32 +670573,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "non_fast_forward", "description": "Prevent users with push access from force pushing to refs.", @@ -658043,32 +670589,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "commit_message_pattern", "description": "Parameters to be used for the commit_message_pattern rule", @@ -658116,32 +670636,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "commit_author_email_pattern", "description": "Parameters to be used for the commit_author_email_pattern rule", @@ -658189,32 +670683,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "committer_email_pattern", "description": "Parameters to be used for the committer_email_pattern rule", @@ -658262,32 +670730,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "branch_name_pattern", "description": "Parameters to be used for the branch_name_pattern rule", @@ -658335,32 +670777,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "tag_name_pattern", "description": "Parameters to be used for the tag_name_pattern rule", @@ -658408,32 +670824,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "workflows", "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", @@ -658493,32 +670883,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "code_scanning", "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", @@ -658584,32 +670948,6 @@ } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ { "title": "copilot_code_review", "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", @@ -658640,34 +670978,55 @@ } }, { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], "properties": { - "ruleset_source_type": { + "type": { "type": "string", - "description": "The type of source for the ruleset that includes this rule.", "enum": [ - "Repository", - "Organization" + "license_compliance_scanning" ] - }, - "ruleset_source": { + } + } + }, + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + "enum": [ + "file_path_restriction" + ] }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_paths" + ] } } - } - ] - }, - { - "allOf": [ + }, { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", "type": "object", "required": [ "type" @@ -658676,288 +671035,840 @@ "type": { "type": "string", "enum": [ - "license_compliance_scanning" + "max_file_path_length" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } + }, + "required": [ + "max_file_path_length" ] } } }, { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], "properties": { - "ruleset_source_type": { + "type": { "type": "string", - "description": "The type of source for the ruleset that includes this rule.", "enum": [ - "Repository", - "Organization" + "file_extension_restriction" ] }, - "ruleset_source": { + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" + } + } + }, + "required": [ + "restricted_file_extensions" + ] + } + } + }, + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + "enum": [ + "max_file_size" + ] }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." + "parameters": { + "type": "object", + "properties": { + "max_file_size": { + "type": "integer", + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 + } + }, + "required": [ + "max_file_size" + ] } } } ] + } + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" + } + } + }, + "examples": { + "default": { + "value": { + "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" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + } + } + }, + "/repos/{owner}/{repo}/rulesets/rule-suites": { + "get": { + "summary": "List repository rule suites", + "description": "Lists suites of rule evaluations at the repository level.\nFor more information, see \"[Managing rulesets for a repository](https://docs.github.com/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/managing-rulesets-for-a-repository#viewing-insights-for-rulesets).\"", + "tags": [ + "repos" + ], + "operationId": "repos/get-repo-rule-suites", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/rule-suites#list-repository-rule-suites" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ref", + "description": "The name of the ref. Cannot contain wildcard characters. Optionally prefix with `refs/heads/` to limit to branches or `refs/tags/` to limit to tags. Omit the prefix to search across all refs. When specified, only rule evaluations triggered for this ref will be returned.", + "in": "query", + "schema": { + "type": "string" + }, + "x-multi-segment": true + }, + { + "name": "time_period", + "description": "The time period to filter by.\n\nFor example, `day` will filter for rule suites that occurred in the past 24 hours, and `week` will filter for rule suites that occurred in the past 7 days (168 hours).", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "hour", + "day", + "week", + "month" + ], + "default": "day" + } + }, + { + "name": "actor_name", + "description": "The handle for the GitHub user account to filter on. When specified, only rule evaluations triggered by this actor will be returned.", + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "rule_suite_result", + "description": "The rule suite results to filter on. When specified, only suites with this result will be returned.", + "in": "query", + "schema": { + "type": "string", + "enum": [ + "pass", + "fail", + "bypass", + "all" + ], + "default": "all" + } + }, + { + "name": "evaluate_status", + "description": "The evaluate status to filter on. When specified, only rule suites resulting from rulesets with the specified evaluate status will be returned.\n - `all` - all rule suites will be returned.\n - `active` - only rule suites resulting from rulesets in active (non-evaluate) mode will be returned.\n - `evaluate` - only rule suites resulting from rulesets in evaluate mode will be returned.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "all", + "active", + "evaluate" + ], + "default": "all" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Rule Suites", + "description": "Response", + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "The unique identifier of the rule insight." + }, + "actor_id": { + "type": "integer", + "description": "The number that identifies the user." + }, + "actor_name": { + "type": "string", + "description": "The handle for the GitHub user account." + }, + "before_sha": { + "type": "string", + "description": "The first commit sha before the push evaluation." + }, + "after_sha": { + "type": "string", + "description": "The last commit sha in the push evaluation." + }, + "ref": { + "type": "string", + "description": "The ref name that the evaluation ran on." + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository associated with the rule evaluation." + }, + "repository_name": { + "type": "string", + "description": "The name of the repository without the `.git` extension." + }, + "pushed_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "result": { + "type": "string", + "enum": [ + "pass", + "fail", + "bypass" + ], + "description": "The result of the rule evaluations for rules with the `active` enforcement status." + }, + "evaluation_result": { + "type": "string", + "enum": [ + "pass", + "fail", + "bypass" + ], + "description": "The result of the rule evaluations for rules with the `active` and `evaluate` enforcement statuses, demonstrating whether rules would pass or fail if all rules in the rule suite were `active`." + } + } + } + }, + "examples": { + "default": { + "value": [ + { + "id": 21, + "actor_id": 12, + "actor_name": "octocat", + "before_sha": "893f768e172fb1bc9c5d6f3dd48557e45f14e01d", + "after_sha": "dedd88641a362b6b4ea872da4847d6131a164d01", + "ref": "refs/heads/i-see-everything", + "repository_id": 404, + "repository_name": "octo-repo", + "pushed_at": "2023-07-06T08:43:03Z", + "result": "bypass" }, { - "allOf": [ - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "id": 25, + "actor_id": 11, + "actor_name": "not-octocat", + "before_sha": "48994e4e01ccc943624c6231f172702b82b233cc", + "after_sha": "ecfd5a1025fa271a33ca5608d089476a2df3c9a1", + "ref": "refs/heads/i-am-everything", + "repository_id": 404, + "repository_name": "octo-repo", + "pushed_at": "2023-07-07T08:43:03Z", + "result": "pass", + "evaluation_result": "fail" + } + ] + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "rule-suites" + } + } + }, + "/repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}": { + "get": { + "summary": "Get a repository rule suite", + "description": "Gets information about a suite of rule evaluations from within a repository.\nFor more information, see \"[Managing rulesets for a repository](https://docs.github.com/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/managing-rulesets-for-a-repository#viewing-insights-for-rulesets).\"", + "tags": [ + "repos" + ], + "operationId": "repos/get-repo-rule-suite", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/repos/rule-suites#get-a-repository-rule-suite" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "rule_suite_id", + "description": "The unique identifier of the rule suite result.\nTo get this ID, you can use [GET /repos/{owner}/{repo}/rulesets/rule-suites](https://docs.github.com/rest/repos/rule-suites#list-repository-rule-suites)\nfor repositories and [GET /orgs/{org}/rulesets/rule-suites](https://docs.github.com/rest/orgs/rule-suites#list-organization-rule-suites)\nfor organizations.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "title": "Rule Suite", + "description": "Response", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "The unique identifier of the rule insight." + }, + "actor_id": { + "type": [ + "integer", + "null" + ], + "description": "The number that identifies the user." + }, + "actor_name": { + "type": [ + "string", + "null" + ], + "description": "The handle for the GitHub user account." + }, + "before_sha": { + "type": "string", + "description": "The previous commit SHA of the ref." + }, + "after_sha": { + "type": "string", + "description": "The new commit SHA of the ref." + }, + "ref": { + "type": "string", + "description": "The ref name that the evaluation ran on." + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository associated with the rule evaluation." + }, + "repository_name": { + "type": "string", + "description": "The name of the repository without the `.git` extension." + }, + "pushed_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "result": { + "type": "string", + "enum": [ + "pass", + "fail", + "bypass" + ], + "description": "The result of the rule evaluations for rules with the `active` enforcement status." + }, + "evaluation_result": { + "type": [ + "string", + "null" + ], + "enum": [ + "pass", + "fail", + "bypass", + null + ], + "description": "The result of the rule evaluations for rules with the `active` and `evaluate` enforcement statuses, demonstrating whether rules would pass or fail if all rules in the rule suite were `active`. Null if no rules with `evaluate` enforcement status were run." + }, + "rule_evaluations": { + "type": "array", + "description": "Details on the evaluated rules.", + "items": { + "type": "object", + "properties": { + "rule_source": { "type": "object", - "required": [ - "type" - ], "properties": { "type": { "type": "string", - "enum": [ - "file_path_restriction" - ] - }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_paths" - ] - } - } - }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." + "description": "The type of rule source." }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_path_length" - ] + "id": { + "type": [ + "integer", + "null" + ], + "description": "The ID of the rule source." }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 - } - }, - "required": [ - "max_file_path_length" - ] + "name": { + "type": [ + "string", + "null" + ], + "description": "The name of the rule source." } } }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" + "enforcement": { + "type": "string", + "enum": [ + "active", + "evaluate", + "deleted ruleset" ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_extension_restriction" - ] - }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_extensions" - ] - } - } + "description": "The enforcement level of this rule source." }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } - } - ] - }, - { - "allOf": [ - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" + "result": { + "type": "string", + "enum": [ + "pass", + "fail" ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_size" - ] - }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } - }, - "required": [ - "max_file_size" - ] - } - } + "description": "The result of the evaluation of the individual rule." }, - { - "title": "repository ruleset data for rule", - "description": "User-defined metadata to store domain-specific information limited to 8 keys with scalar values.", - "properties": { - "ruleset_source_type": { - "type": "string", - "description": "The type of source for the ruleset that includes this rule.", - "enum": [ - "Repository", - "Organization" - ] - }, - "ruleset_source": { - "type": "string", - "description": "The name of the source of the ruleset that includes this rule." - }, - "ruleset_id": { - "type": "integer", - "description": "The ID of the ruleset that includes this rule." - } - } + "rule_type": { + "type": "string", + "description": "The type of rule." + }, + "details": { + "type": [ + "string", + "null" + ], + "description": "The detailed failure message for the rule. Null if the rule passed." } - ] + } } - ] + } } }, "examples": { "default": { - "value": [ - { - "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" + "value": { + "id": 21, + "actor_id": 12, + "actor_name": "octocat", + "before_sha": "893f768e172fb1bc9c5d6f3dd48557e45f14e01d", + "after_sha": "dedd88641a362b6b4ea872da4847d6131a164d01", + "ref": "refs/heads/i-see-everything", + "repository_id": 404, + "repository_name": "octo-repo", + "pushed_at": "2023-07-06T08:43:03Z", + "result": "bypass", + "evaluation_result": "fail", + "rule_evaluations": [ + { + "rule_source": { + "type": "ruleset", + "id": 2, + "name": "Author email must be a GitHub email address" + }, + "enforcement": "active", + "result": "pass", + "rule_type": "commit_author_email_pattern" + }, + { + "rule_source": { + "type": "protected_branch" + }, + "enforcement": "active", + "result": "fail", + "rule_type": "pull_request", + "details": "Changes must be made through a pull request." + }, + { + "rule_source": { + "type": "ruleset", + "id": 3, + "name": "Evaluate commit message pattern" + }, + "enforcement": "evaluate", + "result": "fail", + "rule_type": "commit_message_pattern" } - } - ] + ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } } } } @@ -658968,21 +671879,21 @@ "githubCloudOnly": false, "enabledForGitHubApps": true, "category": "repos", - "subcategory": "rules" + "subcategory": "rule-suites" } } }, - "/repos/{owner}/{repo}/rulesets": { + "/repos/{owner}/{repo}/rulesets/{ruleset_id}": { "get": { - "summary": "Get all repository rulesets", - "description": "Get all the rulesets for a repository.", + "summary": "Get a repository ruleset", + "description": "Get a ruleset for a repository.\n\n**Note:** To prevent leaking sensitive information, the `bypass_actors` property is only returned if the user\nmaking the API request has write access to the ruleset.", "tags": [ "repos" ], - "operationId": "repos/get-repo-rulesets", + "operationId": "repos/get-repo-ruleset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#get-all-repository-rulesets" + "url": "https://docs.github.com/rest/repos/rules#get-a-repository-ruleset" }, "x-github": { "githubCloudOnly": false, @@ -659010,21 +671921,12 @@ } }, { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", + "name": "ruleset_id", + "description": "The ID of the ruleset.", + "in": "path", + "required": true, "schema": { - "type": "integer", - "default": 1 + "type": "integer" } }, { @@ -659036,18 +671938,6 @@ "type": "boolean", "default": true } - }, - { - "name": "targets", - "description": "A comma-separated list of rule targets to filter by.\nIf provided, only rulesets that apply to the specified targets will be returned.\nFor example, `branch,tag,push`.\n", - "in": "query", - "required": false, - "schema": { - "type": "string", - "examples": [ - "branch,tag,push" - ] - } } ], "responses": { @@ -659056,1430 +671946,1435 @@ "content": { "application/json": { "schema": { - "type": "array", - "items": { - "title": "Repository ruleset", - "type": "object", - "description": "A set of rules to apply when specified conditions are met.", - "required": [ - "id", - "name", - "source", - "enforcement" - ], - "properties": { - "id": { - "type": "integer", - "description": "The ID of the ruleset" - }, - "name": { - "type": "string", - "description": "The name of the ruleset" - }, - "target": { - "type": "string", - "description": "The target of the ruleset", - "enum": [ - "branch", - "tag", - "push", - "repository" - ] - }, - "source_type": { - "type": "string", - "description": "The type of the source of the ruleset", - "enum": [ - "Repository", - "Organization", - "Enterprise" - ] - }, - "source": { - "type": "string", - "description": "The name of the source" - }, - "enforcement": { - "type": "string", - "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", - "enum": [ - "disabled", - "active", - "evaluate" - ] - }, - "bypass_actors": { - "type": "array", - "description": "The actors that can bypass the rules in this ruleset", - "items": { - "title": "Repository Ruleset Bypass Actor", - "type": "object", - "description": "An actor that can bypass rules in a ruleset", - "required": [ - "actor_type" - ], - "properties": { - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." - }, - "actor_type": { - "type": "string", - "enum": [ - "Integration", - "OrganizationAdmin", - "RepositoryRole", - "Team", - "DeployKey", - "User" - ], - "description": "The type of actor that can bypass a ruleset." - }, - "bypass_mode": { - "type": "string", - "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", - "enum": [ - "always", - "pull_request", - "exempt" - ], - "default": "always" - } - } - } - }, - "current_user_can_bypass": { - "type": "string", - "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", - "enum": [ - "always", - "pull_requests_only", - "never", - "exempt" - ] - }, - "node_id": { - "type": "string" - }, - "_links": { + "title": "Repository ruleset", + "type": "object", + "description": "A set of rules to apply when specified conditions are met.", + "required": [ + "id", + "name", + "source", + "enforcement" + ], + "properties": { + "id": { + "type": "integer", + "description": "The ID of the ruleset" + }, + "name": { + "type": "string", + "description": "The name of the ruleset" + }, + "target": { + "type": "string", + "description": "The target of the ruleset", + "enum": [ + "branch", + "tag", + "push", + "repository" + ] + }, + "source_type": { + "type": "string", + "description": "The type of the source of the ruleset", + "enum": [ + "Repository", + "Organization", + "Enterprise" + ] + }, + "source": { + "type": "string", + "description": "The name of the source" + }, + "enforcement": { + "type": "string", + "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", + "enum": [ + "disabled", + "active", + "evaluate" + ] + }, + "bypass_actors": { + "type": "array", + "description": "The actors that can bypass the rules in this ruleset", + "items": { + "title": "Repository Ruleset Bypass Actor", "type": "object", + "description": "An actor that can bypass rules in a ruleset", + "required": [ + "actor_type" + ], "properties": { - "self": { - "type": "object", - "properties": { - "href": { - "type": "string", - "description": "The URL of the ruleset" - } - } - }, - "html": { + "actor_id": { "type": [ - "object", + "integer", "null" ], - "properties": { - "href": { - "type": "string", - "description": "The html URL of the ruleset" - } - } + "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." + }, + "actor_type": { + "type": "string", + "enum": [ + "Integration", + "OrganizationAdmin", + "RepositoryRole", + "Team", + "DeployKey", + "User" + ], + "description": "The type of actor that can bypass a ruleset." + }, + "bypass_mode": { + "type": "string", + "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", + "enum": [ + "always", + "pull_request", + "exempt" + ], + "default": "always" } } - }, - "conditions": { - "anyOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } + } + }, + "current_user_can_bypass": { + "type": "string", + "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", + "enum": [ + "always", + "pull_requests_only", + "never", + "exempt" + ] + }, + "node_id": { + "type": "string" + }, + "_links": { + "type": "object", + "properties": { + "self": { + "type": "object", + "properties": { + "href": { + "type": "string", + "description": "The URL of the ruleset" } - }, - { - "title": "Organization ruleset conditions", - "type": "object", - "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", - "oneOf": [ - { - "type": "object", - "title": "repository_name_and_ref_name", - "description": "Conditions to target repositories by name and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository names", - "type": "object", - "description": "Parameters for a repository name condition", - "properties": { - "repository_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - }, - "protected": { - "type": "boolean", - "description": "Whether renaming of target repositories is prevented." - } - } - } - }, - "required": [ - "repository_name" - ] - } - ] - }, - { - "type": "object", - "title": "repository_id_and_ref_name", - "description": "Conditions to target repositories by id and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository IDs", - "type": "object", - "description": "Parameters for a repository ID condition", - "properties": { - "repository_id": { - "type": "object", - "properties": { - "repository_ids": { - "type": "array", - "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", - "items": { - "type": "integer" - } - } - } - } - }, - "required": [ - "repository_id" - ] - } - ] - }, - { - "type": "object", - "title": "repository_property_and_ref_name", - "description": "Conditions to target repositories by property and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository properties", - "type": "object", - "description": "Parameters for a repository property condition", - "properties": { - "repository_property": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - }, - "exclude": { - "type": "array", - "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - } - } - } - }, - "required": [ - "repository_property" - ] - } - ] - } - ] } - ], - "type": [ - "null", - "object" - ] - }, - "rules": { - "type": "array", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule.", - "oneOf": [ - { - "title": "creation", - "description": "Only allow users with bypass permission to create matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "creation" - ] - } - } - }, - { - "title": "update", - "description": "Only allow users with bypass permission to update matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "update" - ] - }, - "parameters": { - "type": "object", - "properties": { - "update_allows_fetch_and_merge": { - "type": "boolean", - "description": "Branch can pull changes from its upstream repository" - } - }, - "required": [ - "update_allows_fetch_and_merge" - ] - } - } - }, - { - "title": "deletion", - "description": "Only allow users with bypass permissions to delete matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "deletion" - ] - } - } - }, - { - "title": "required_linear_history", - "description": "Prevent merge commits from being pushed to matching refs.", + }, + "html": { + "type": [ + "object", + "null" + ], + "properties": { + "href": { + "type": "string", + "description": "The html URL of the ruleset" + } + } + } + } + }, + "conditions": { + "anyOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { "type": "object", - "required": [ - "type" - ], "properties": { - "type": { - "type": "string", - "enum": [ - "required_linear_history" - ] + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } } } - }, + } + } + }, + { + "title": "Organization ruleset conditions", + "type": "object", + "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", + "oneOf": [ { - "title": "merge_queue", - "description": "Merges must be performed via a merge queue.", "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "merge_queue" - ] + "title": "repository_name_and_ref_name", + "description": "Conditions to target repositories by name and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } }, - "parameters": { + { + "title": "Repository ruleset conditions for repository names", "type": "object", + "description": "Parameters for a repository name condition", "properties": { - "check_response_timeout_minutes": { - "type": "integer", - "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", - "minimum": 1, - "maximum": 360 - }, - "grouping_strategy": { - "type": "string", - "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", - "enum": [ - "ALLGREEN", - "HEADGREEN" - ] - }, - "max_entries_to_build": { - "type": "integer", - "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", - "minimum": 0, - "maximum": 100 - }, - "max_entries_to_merge": { - "type": "integer", - "description": "The maximum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "merge_method": { - "type": "string", - "description": "Method to use when merging changes from queued pull requests.", - "enum": [ - "MERGE", - "SQUASH", - "REBASE" - ] - }, - "min_entries_to_merge": { - "type": "integer", - "description": "The minimum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "min_entries_to_merge_wait_minutes": { - "type": "integer", - "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", - "minimum": 0, - "maximum": 360 + "repository_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + }, + "protected": { + "type": "boolean", + "description": "Whether renaming of target repositories is prevented." + } + } } }, "required": [ - "check_response_timeout_minutes", - "grouping_strategy", - "max_entries_to_build", - "max_entries_to_merge", - "merge_method", - "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" + "repository_name" ] } - } + ] }, { - "title": "required_deployments", - "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_deployments" - ] + "title": "repository_id_and_ref_name", + "description": "Conditions to target repositories by id and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", + "type": "object", + "description": "Parameters for a repository ruleset ref name condition", + "properties": { + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } + } + } + } }, - "parameters": { + { + "title": "Repository ruleset conditions for repository IDs", "type": "object", + "description": "Parameters for a repository ID condition", "properties": { - "required_deployment_environments": { - "type": "array", - "description": "The environments that must be successfully deployed to before branches can be merged.", - "items": { - "type": "string" + "repository_id": { + "type": "object", + "properties": { + "repository_ids": { + "type": "array", + "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", + "items": { + "type": "integer" + } + } } } }, "required": [ - "required_deployment_environments" - ] - } - } - }, - { - "title": "required_signatures", - "description": "Commits pushed to matching refs must have verified signatures.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_signatures" + "repository_id" ] } - } + ] }, { - "title": "pull_request", - "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "pull_request" - ] - }, - "parameters": { + "title": "repository_property_and_ref_name", + "description": "Conditions to target repositories by property and refs by name", + "allOf": [ + { + "title": "Repository ruleset conditions for ref names", "type": "object", + "description": "Parameters for a repository ruleset ref name condition", "properties": { - "allowed_merge_methods": { - "type": "array", - "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", - "items": { - "type": "string", - "enum": [ - "merge", - "squash", - "rebase" - ] + "ref_name": { + "type": "object", + "properties": { + "include": { + "type": "array", + "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", + "items": { + "type": "string" + } + }, + "exclude": { + "type": "array", + "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", + "items": { + "type": "string" + } + } } - }, - "dismiss_stale_reviews_on_push": { - "type": "boolean", - "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." - }, - "dismissal_restriction": { - "title": "DismissalRestriction", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + } + } + }, + { + "title": "Repository ruleset conditions for repository properties", + "type": "object", + "description": "Parameters for a repository property condition", + "properties": { + "repository_property": { "type": "object", "properties": { - "allowed_actors": { + "include": { "type": "array", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", "items": { - "title": "Actor", - "description": "An actor allowed to dismiss pull request reviews", + "title": "Repository ruleset property targeting definition", "type": "object", + "description": "Parameters for a targeting a repository property", "properties": { - "id": { - "type": "integer", - "description": "ID of the actor that can dismiss reviews." + "name": { + "type": "string", + "description": "The name of the repository property to target" }, - "type": { + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { "type": "string", - "description": "The type of the actor", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", "enum": [ - "User", - "Team", - "IntegrationInstallation", - "RepositoryRole" + "custom", + "system" ] } }, "required": [ - "id", - "type" + "name", + "property_values" ] } }, - "enabled": { - "type": "boolean", - "description": "Whether to restrict review dismissal to specific actors." - } - }, - "required": [ - "enabled" - ] - }, - "require_code_owner_review": { - "type": "boolean", - "description": "Require an approving review in pull requests that modify files that have a designated code owner." - }, - "require_last_push_approval": { - "type": "boolean", - "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." - }, - "required_approving_review_count": { - "type": "integer", - "description": "The number of approving reviews that are required before a pull request can be merged.", - "minimum": 0, - "maximum": 10 - }, - "required_review_thread_resolution": { - "type": "boolean", - "description": "All conversations on code must be resolved before a pull request can be merged." - }, - "required_reviewers": { - "type": "array", - "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", - "items": { - "title": "RequiredReviewerConfiguration", - "description": "A reviewing team, and file patterns describing which files they must approve changes to.", - "type": "object", - "properties": { - "file_patterns": { - "type": "array", - "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", - "items": { - "type": "string" - } - }, - "minimum_approvals": { - "type": "integer", - "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." - }, - "reviewer": { - "title": "Reviewer", - "description": "A required reviewing team", + "exclude": { + "type": "array", + "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", + "items": { + "title": "Repository ruleset property targeting definition", "type": "object", + "description": "Parameters for a targeting a repository property", "properties": { - "id": { - "type": "integer", - "description": "ID of the reviewer which must review changes to matching files." + "name": { + "type": "string", + "description": "The name of the repository property to target" }, - "type": { + "property_values": { + "type": "array", + "description": "The values to match for the repository property", + "items": { + "type": "string" + } + }, + "source": { "type": "string", - "description": "The type of the reviewer", + "description": "The source of the repository property. Defaults to 'custom' if not specified.", "enum": [ - "Team" + "custom", + "system" ] } }, "required": [ - "id", - "type" + "name", + "property_values" ] } - }, - "required": [ - "file_patterns", - "minimum_approvals", - "reviewer" - ] + } } } }, "required": [ - "dismiss_stale_reviews_on_push", - "require_code_owner_review", - "require_last_push_approval", - "required_approving_review_count", - "required_review_thread_resolution" + "repository_property" ] } + ] + } + ] + } + ], + "type": [ + "null", + "object" + ] + }, + "rules": { + "type": "array", + "items": { + "title": "Repository Rule", + "type": "object", + "description": "A repository rule.", + "oneOf": [ + { + "title": "creation", + "description": "Only allow users with bypass permission to create matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "creation" + ] } - }, - { - "title": "required_status_checks", - "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_status_checks" - ] + } + }, + { + "title": "update", + "description": "Only allow users with bypass permission to update matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "update" + ] + }, + "parameters": { + "type": "object", + "properties": { + "update_allows_fetch_and_merge": { + "type": "boolean", + "description": "Branch can pull changes from its upstream repository" + } }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "required_status_checks": { - "type": "array", - "description": "Status checks that are required.", - "items": { - "title": "StatusCheckConfiguration", - "description": "Required status check", - "type": "object", - "properties": { - "context": { - "type": "string", - "description": "The status check context name that must be present on the commit." - }, - "integration_id": { - "type": "integer", - "description": "The optional integration ID that this status check must originate from." - } - }, - "required": [ - "context" - ] - } - }, - "strict_required_status_checks_policy": { - "type": "boolean", - "description": "Whether 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." - } - }, - "required": [ - "required_status_checks", - "strict_required_status_checks_policy" - ] - } + "required": [ + "update_allows_fetch_and_merge" + ] } - }, - { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "non_fast_forward" - ] - } + } + }, + { + "title": "deletion", + "description": "Only allow users with bypass permissions to delete matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "deletion" + ] } - }, - { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_message_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + } + }, + { + "title": "required_linear_history", + "description": "Prevent merge commits from being pushed to matching refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_linear_history" + ] + } + } + }, + { + "title": "merge_queue", + "description": "Merges must be performed via a merge queue.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "merge_queue" + ] + }, + "parameters": { + "type": "object", + "properties": { + "check_response_timeout_minutes": { + "type": "integer", + "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", + "minimum": 1, + "maximum": 360 }, - "required": [ - "operator", - "pattern" - ] - } + "grouping_strategy": { + "type": "string", + "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", + "enum": [ + "ALLGREEN", + "HEADGREEN" + ] + }, + "max_entries_to_build": { + "type": "integer", + "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", + "minimum": 0, + "maximum": 100 + }, + "max_entries_to_merge": { + "type": "integer", + "description": "The maximum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "merge_method": { + "type": "string", + "description": "Method to use when merging changes from queued pull requests.", + "enum": [ + "MERGE", + "SQUASH", + "REBASE" + ] + }, + "min_entries_to_merge": { + "type": "integer", + "description": "The minimum number of PRs that will be merged together in a group.", + "minimum": 0, + "maximum": 100 + }, + "min_entries_to_merge_wait_minutes": { + "type": "integer", + "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", + "minimum": 0, + "maximum": 360 + } + }, + "required": [ + "check_response_timeout_minutes", + "grouping_strategy", + "max_entries_to_build", + "max_entries_to_merge", + "merge_method", + "min_entries_to_merge", + "min_entries_to_merge_wait_minutes" + ] } - }, - { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_author_email_pattern" - ] + } + }, + { + "title": "required_deployments", + "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_deployments" + ] + }, + "parameters": { + "type": "object", + "properties": { + "required_deployment_environments": { + "type": "array", + "description": "The environments that must be successfully deployed to before branches can be merged.", + "items": { + "type": "string" + } + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "required": [ + "required_deployment_environments" + ] + } + } + }, + { + "title": "required_signatures", + "description": "Commits pushed to matching refs must have verified signatures.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_signatures" + ] + } + } + }, + { + "title": "pull_request", + "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "pull_request" + ] + }, + "parameters": { + "type": "object", + "properties": { + "allowed_merge_methods": { + "type": "array", + "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", + "items": { "type": "string", - "description": "The operator to use for matching.", "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "merge", + "squash", + "rebase" ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." } }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "committer_email_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." + "dismiss_stale_reviews_on_push": { + "type": "boolean", + "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." + }, + "dismissal_restriction": { + "title": "DismissalRestriction", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "type": "object", + "properties": { + "allowed_actors": { + "type": "array", + "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", + "items": { + "title": "Actor", + "description": "An actor allowed to dismiss pull request reviews", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the actor that can dismiss reviews." + }, + "type": { + "type": "string", + "description": "The type of the actor", + "enum": [ + "User", + "Team", + "IntegrationInstallation", + "RepositoryRole" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "enabled": { + "type": "boolean", + "description": "Whether to restrict review dismissal to specific actors." + } }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "required": [ + "enabled" + ] + }, + "require_code_owner_review": { + "type": "boolean", + "description": "Require an approving review in pull requests that modify files that have a designated code owner." + }, + "require_last_push_approval": { + "type": "boolean", + "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + }, + "required_approving_review_count": { + "type": "integer", + "description": "The number of approving reviews that are required before a pull request can be merged.", + "minimum": 0, + "maximum": 10 + }, + "required_review_thread_resolution": { + "type": "boolean", + "description": "All conversations on code must be resolved before a pull request can be merged." + }, + "required_reviewers": { + "type": "array", + "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", + "items": { + "title": "RequiredReviewerConfiguration", + "description": "A reviewing team, and file patterns describing which files they must approve changes to.", + "type": "object", + "properties": { + "file_patterns": { + "type": "array", + "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", + "items": { + "type": "string" + } + }, + "minimum_approvals": { + "type": "integer", + "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." + }, + "reviewer": { + "title": "Reviewer", + "description": "A required reviewing team", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "ID of the reviewer which must review changes to matching files." + }, + "type": { + "type": "string", + "description": "The type of the reviewer", + "enum": [ + "Team" + ] + } + }, + "required": [ + "id", + "type" + ] + } + }, + "required": [ + "file_patterns", + "minimum_approvals", + "reviewer" + ] + } + } + }, + "required": [ + "dismiss_stale_reviews_on_push", + "require_code_owner_review", + "require_last_push_approval", + "required_approving_review_count", + "required_review_thread_resolution" + ] + } + } + }, + { + "title": "required_status_checks", + "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "required_status_checks" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "required_status_checks": { + "type": "array", + "description": "Status checks that are required.", + "items": { + "title": "StatusCheckConfiguration", + "description": "Required status check", + "type": "object", + "properties": { + "context": { + "type": "string", + "description": "The status check context name that must be present on the commit." + }, + "integration_id": { + "type": "integer", + "description": "The optional integration ID that this status check must originate from." + } + }, + "required": [ + "context" ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." } }, - "required": [ - "operator", - "pattern" - ] - } + "strict_required_status_checks_policy": { + "type": "boolean", + "description": "Whether 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." + } + }, + "required": [ + "required_status_checks", + "strict_required_status_checks_policy" + ] } - }, - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "branch_name_pattern" - ] + } + }, + { + "title": "non_fast_forward", + "description": "Prevent users with push access from force pushing to refs.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "non_fast_forward" + ] + } + } + }, + { + "title": "commit_message_pattern", + "description": "Parameters to be used for the commit_message_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_message_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "commit_author_email_pattern", + "description": "Parameters to be used for the commit_author_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "commit_author_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." }, - "required": [ - "operator", - "pattern" - ] - } + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] } - }, - { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "tag_name_pattern" - ] + } + }, + { + "title": "committer_email_pattern", + "description": "Parameters to be used for the committer_email_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "committer_email_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "branch_name_pattern", + "description": "Parameters to be used for the branch_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "branch_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." }, - "required": [ - "operator", - "pattern" - ] - } + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } + }, + "required": [ + "operator", + "pattern" + ] } - }, - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "workflows" - ] + } + }, + { + "title": "tag_name_pattern", + "description": "Parameters to be used for the tag_name_pattern rule", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "tag_name_pattern" + ] + }, + "parameters": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "How this rule appears when configuring it." + }, + "negate": { + "type": "boolean", + "description": "If true, the rule will fail if the pattern matches." + }, + "operator": { + "type": "string", + "description": "The operator to use for matching.", + "enum": [ + "starts_with", + "ends_with", + "contains", + "regex" + ] + }, + "pattern": { + "type": "string", + "description": "The pattern to match with." + } }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } + "required": [ + "operator", + "pattern" + ] + } + } + }, + { + "title": "workflows", + "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "workflows" + ] + }, + "parameters": { + "type": "object", + "properties": { + "do_not_enforce_on_create": { + "type": "boolean", + "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + }, + "workflows": { + "type": "array", + "description": "Workflows that must pass for this rule to pass.", + "items": { + "title": "WorkflowFileReference", + "description": "A workflow that must run for this rule to pass", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path to the workflow file" }, - "required": [ - "path", - "repository_id" - ] - } + "ref": { + "type": "string", + "description": "The ref (branch or tag) of the workflow file to use" + }, + "repository_id": { + "type": "integer", + "description": "The ID of the repository where the workflow is defined" + }, + "sha": { + "type": "string", + "description": "The commit SHA of the workflow file to use" + } + }, + "required": [ + "path", + "repository_id" + ] } - }, - "required": [ - "workflows" - ] - } - } - }, - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "code_scanning" - ] + } }, - "parameters": { - "type": "object", - "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } + "required": [ + "workflows" + ] + } + } + }, + { + "title": "code_scanning", + "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "code_scanning" + ] + }, + "parameters": { + "type": "object", + "properties": { + "code_scanning_tools": { + "type": "array", + "description": "Tools that must provide code scanning results for this rule to pass.", + "items": { + "title": "CodeScanningTool", + "description": "A tool that must provide code scanning results for this rule to pass.", + "type": "object", + "properties": { + "alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "errors", + "errors_and_warnings", + "all" + ] }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } + "security_alerts_threshold": { + "type": "string", + "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", + "enum": [ + "none", + "critical", + "high_or_higher", + "medium_or_higher", + "all" + ] + }, + "tool": { + "type": "string", + "description": "The name of a code scanning tool" + } + }, + "required": [ + "alerts_threshold", + "security_alerts_threshold", + "tool" + ] } - }, - "required": [ - "code_scanning_tools" - ] - } - } - }, - { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "copilot_code_review" - ] + } }, - "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." - } + "required": [ + "code_scanning_tools" + ] + } + } + }, + { + "title": "copilot_code_review", + "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "copilot_code_review" + ] + }, + "parameters": { + "type": "object", + "properties": { + "review_draft_pull_requests": { + "type": "boolean", + "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." + }, + "review_on_push": { + "type": "boolean", + "description": "Copilot automatically reviews each new push to the pull request." } } } - }, - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "license_compliance_scanning" - ] - } + } + }, + { + "title": "license_compliance_scanning", + "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "license_compliance_scanning" + ] } - }, - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_path_restriction" - ] - }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } + } + }, + { + "title": "file_path_restriction", + "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_path_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_paths": { + "type": "array", + "description": "The file paths that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" } - }, - "required": [ - "restricted_file_paths" - ] - } - } - }, - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_path_length" - ] + } }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 - } - }, - "required": [ - "max_file_path_length" - ] - } + "required": [ + "restricted_file_paths" + ] } - }, - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_extension_restriction" - ] + } + }, + { + "title": "max_file_path_length", + "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_path_length" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_path_length": { + "type": "integer", + "description": "The maximum amount of characters allowed in file paths.", + "minimum": 1, + "maximum": 32767 + } }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } + "required": [ + "max_file_path_length" + ] + } + } + }, + { + "title": "file_extension_restriction", + "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "file_extension_restriction" + ] + }, + "parameters": { + "type": "object", + "properties": { + "restricted_file_extensions": { + "type": "array", + "description": "The file extensions that are restricted from being pushed to the commit graph.", + "items": { + "type": "string" } - }, - "required": [ - "restricted_file_extensions" - ] - } + } + }, + "required": [ + "restricted_file_extensions" + ] } - }, - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_size" - ] + } + }, + { + "title": "max_file_size", + "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "max_file_size" + ] + }, + "parameters": { + "type": "object", + "properties": { + "max_file_size": { + "type": "integer", + "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", + "minimum": 1, + "maximum": 100 + } }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } - }, - "required": [ - "max_file_size" - ] - } + "required": [ + "max_file_size" + ] } } - ] - } - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" + } + ] } + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "updated_at": { + "type": "string", + "format": "date-time" } } }, "examples": { "default": { - "value": [ - { - "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" + "value": { + "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*" + ] + } }, - { - "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" + "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" }, - "created_at": "2023-08-15T08:43:03Z", - "updated_at": "2023-09-23T16:29:47Z" - } - ] + "html": { + "href": "https://github.com/monalisa/my-repo/rules/42" + } + }, + "created_at": "2023-07-15T08:43:03Z", + "updated_at": "2023-08-23T16:29:47Z" + } } } } @@ -660539,16 +673434,16 @@ } } }, - "post": { - "summary": "Create a repository ruleset", - "description": "Create a ruleset for a repository.", + "put": { + "summary": "Update a repository ruleset", + "description": "Update a ruleset for a repository.", "tags": [ "repos" ], - "operationId": "repos/create-repo-ruleset", + "operationId": "repos/update-repo-ruleset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#create-a-repository-ruleset" + "url": "https://docs.github.com/rest/repos/rules#update-a-repository-ruleset" }, "x-github": { "githubCloudOnly": false, @@ -660574,11 +673469,20 @@ "schema": { "type": "string" } + }, + { + "name": "ruleset_id", + "description": "The ID of the ruleset.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } } ], "requestBody": { "description": "Request body", - "required": true, + "required": false, "content": { "application/json": { "schema": { @@ -660595,8 +673499,7 @@ "branch", "tag", "push" - ], - "default": "branch" + ] }, "enforcement": { "type": "string", @@ -660677,8 +673580,8 @@ } }, "rules": { - "type": "array", "description": "An array of rules within the ruleset.", + "type": "array", "items": { "title": "Repository Rule", "type": "object", @@ -661638,11 +674541,7 @@ ] } } - }, - "required": [ - "name", - "enforcement" - ] + } }, "examples": { "default": { @@ -661684,7 +674583,7 @@ } }, "responses": { - "201": { + "200": { "description": "Response", "content": { "application/json": { @@ -663251,19 +676150,23 @@ } } } - } - }, - "/repos/{owner}/{repo}/rulesets/rule-suites": { - "get": { - "summary": "List repository rule suites", - "description": "Lists suites of rule evaluations at the repository level.\nFor more information, see \"[Managing rulesets for a repository](https://docs.github.com/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/managing-rulesets-for-a-repository#viewing-insights-for-rulesets).\"", + }, + "delete": { + "summary": "Delete a repository ruleset", + "description": "Delete a ruleset for a repository.", "tags": [ "repos" ], - "operationId": "repos/get-repo-rule-suites", + "operationId": "repos/delete-repo-ruleset", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rule-suites#list-repository-rule-suites" + "url": "https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "rules" }, "parameters": [ { @@ -663285,192 +676188,18 @@ } }, { - "name": "ref", - "description": "The name of the ref. Cannot contain wildcard characters. Optionally prefix with `refs/heads/` to limit to branches or `refs/tags/` to limit to tags. Omit the prefix to search across all refs. When specified, only rule evaluations triggered for this ref will be returned.", - "in": "query", - "schema": { - "type": "string" - }, - "x-multi-segment": true - }, - { - "name": "time_period", - "description": "The time period to filter by.\n\nFor example, `day` will filter for rule suites that occurred in the past 24 hours, and `week` will filter for rule suites that occurred in the past 7 days (168 hours).", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "hour", - "day", - "week", - "month" - ], - "default": "day" - } - }, - { - "name": "actor_name", - "description": "The handle for the GitHub user account to filter on. When specified, only rule evaluations triggered by this actor will be returned.", - "in": "query", - "schema": { - "type": "string" - } - }, - { - "name": "rule_suite_result", - "description": "The rule suite results to filter on. When specified, only suites with this result will be returned.", - "in": "query", - "schema": { - "type": "string", - "enum": [ - "pass", - "fail", - "bypass", - "all" - ], - "default": "all" - } - }, - { - "name": "evaluate_status", - "description": "The evaluate status to filter on. When specified, only rule suites resulting from rulesets with the specified evaluate status will be returned.\n - `all` - all rule suites will be returned.\n - `active` - only rule suites resulting from rulesets in active (non-evaluate) mode will be returned.\n - `evaluate` - only rule suites resulting from rulesets in evaluate mode will be returned.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "all", - "active", - "evaluate" - ], - "default": "all" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", + "name": "ruleset_id", + "description": "The ID of the ruleset.", + "in": "path", + "required": true, "schema": { - "type": "integer", - "default": 1 + "type": "integer" } } ], "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Rule Suites", - "description": "Response", - "type": "array", - "items": { - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "The unique identifier of the rule insight." - }, - "actor_id": { - "type": "integer", - "description": "The number that identifies the user." - }, - "actor_name": { - "type": "string", - "description": "The handle for the GitHub user account." - }, - "before_sha": { - "type": "string", - "description": "The first commit sha before the push evaluation." - }, - "after_sha": { - "type": "string", - "description": "The last commit sha in the push evaluation." - }, - "ref": { - "type": "string", - "description": "The ref name that the evaluation ran on." - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository associated with the rule evaluation." - }, - "repository_name": { - "type": "string", - "description": "The name of the repository without the `.git` extension." - }, - "pushed_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "result": { - "type": "string", - "enum": [ - "pass", - "fail", - "bypass" - ], - "description": "The result of the rule evaluations for rules with the `active` enforcement status." - }, - "evaluation_result": { - "type": "string", - "enum": [ - "pass", - "fail", - "bypass" - ], - "description": "The result of the rule evaluations for rules with the `active` and `evaluate` enforcement statuses, demonstrating whether rules would pass or fail if all rules in the rule suite were `active`." - } - } - } - }, - "examples": { - "default": { - "value": [ - { - "id": 21, - "actor_id": 12, - "actor_name": "octocat", - "before_sha": "893f768e172fb1bc9c5d6f3dd48557e45f14e01d", - "after_sha": "dedd88641a362b6b4ea872da4847d6131a164d01", - "ref": "refs/heads/i-see-everything", - "repository_id": 404, - "repository_name": "octo-repo", - "pushed_at": "2023-07-06T08:43:03Z", - "result": "bypass" - }, - { - "id": 25, - "actor_id": 11, - "actor_name": "not-octocat", - "before_sha": "48994e4e01ccc943624c6231f172702b82b233cc", - "after_sha": "ecfd5a1025fa271a33ca5608d089476a2df3c9a1", - "ref": "refs/heads/i-am-everything", - "repository_id": 404, - "repository_name": "octo-repo", - "pushed_at": "2023-07-07T08:43:03Z", - "result": "pass", - "evaluation_result": "fail" - } - ] - } - } - } - } + "204": { + "description": "Response" }, "404": { "description": "Resource not found", @@ -663524,26 +676253,20 @@ } } } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rule-suites" } } }, - "/repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}": { + "/repos/{owner}/{repo}/rulesets/{ruleset_id}/history": { "get": { - "summary": "Get a repository rule suite", - "description": "Gets information about a suite of rule evaluations from within a repository.\nFor more information, see \"[Managing rulesets for a repository](https://docs.github.com/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/managing-rulesets-for-a-repository#viewing-insights-for-rulesets).\"", + "summary": "Get repository ruleset history", + "description": "Get the history of a repository ruleset.", "tags": [ "repos" ], - "operationId": "repos/get-repo-rule-suite", + "operationId": "repos/get-repo-ruleset-history", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rule-suites#get-a-repository-rule-suite" + "url": "https://docs.github.com/rest/repos/rules#get-repository-ruleset-history" }, "parameters": [ { @@ -663565,8 +676288,26 @@ } }, { - "name": "rule_suite_id", - "description": "The unique identifier of the rule suite result.\nTo get this ID, you can use [GET /repos/{owner}/{repo}/rulesets/rule-suites](https://docs.github.com/rest/repos/rule-suites#list-repository-rule-suites)\nfor repositories and [GET /orgs/{org}/rulesets/rule-suites](https://docs.github.com/rest/orgs/rule-suites#list-organization-rule-suites)\nfor organizations.", + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "ruleset_id", + "description": "The ID of the ruleset.", "in": "path", "required": true, "schema": { @@ -663580,186 +676321,69 @@ "content": { "application/json": { "schema": { - "title": "Rule Suite", - "description": "Response", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "The unique identifier of the rule insight." - }, - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The number that identifies the user." - }, - "actor_name": { - "type": [ - "string", - "null" - ], - "description": "The handle for the GitHub user account." - }, - "before_sha": { - "type": "string", - "description": "The previous commit SHA of the ref." - }, - "after_sha": { - "type": "string", - "description": "The new commit SHA of the ref." - }, - "ref": { - "type": "string", - "description": "The ref name that the evaluation ran on." - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository associated with the rule evaluation." - }, - "repository_name": { - "type": "string", - "description": "The name of the repository without the `.git` extension." - }, - "pushed_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "result": { - "type": "string", - "enum": [ - "pass", - "fail", - "bypass" - ], - "description": "The result of the rule evaluations for rules with the `active` enforcement status." - }, - "evaluation_result": { - "type": [ - "string", - "null" - ], - "enum": [ - "pass", - "fail", - "bypass", - null - ], - "description": "The result of the rule evaluations for rules with the `active` and `evaluate` enforcement statuses, demonstrating whether rules would pass or fail if all rules in the rule suite were `active`. Null if no rules with `evaluate` enforcement status were run." - }, - "rule_evaluations": { - "type": "array", - "description": "Details on the evaluated rules.", - "items": { - "type": "object", - "properties": { - "rule_source": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of rule source." - }, - "id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the rule source." - }, - "name": { - "type": [ - "string", - "null" - ], - "description": "The name of the rule source." - } - } - }, - "enforcement": { - "type": "string", - "enum": [ - "active", - "evaluate", - "deleted ruleset" - ], - "description": "The enforcement level of this rule source." - }, - "result": { - "type": "string", - "enum": [ - "pass", - "fail" - ], - "description": "The result of the evaluation of the individual rule." - }, - "rule_type": { - "type": "string", - "description": "The type of rule." - }, - "details": { - "type": [ - "string", - "null" - ], - "description": "The detailed failure message for the rule. Null if the rule passed." - } - } - } - } - } - }, - "examples": { - "default": { - "value": { - "id": 21, - "actor_id": 12, - "actor_name": "octocat", - "before_sha": "893f768e172fb1bc9c5d6f3dd48557e45f14e01d", - "after_sha": "dedd88641a362b6b4ea872da4847d6131a164d01", - "ref": "refs/heads/i-see-everything", - "repository_id": 404, - "repository_name": "octo-repo", - "pushed_at": "2023-07-06T08:43:03Z", - "result": "bypass", - "evaluation_result": "fail", - "rule_evaluations": [ - { - "rule_source": { - "type": "ruleset", - "id": 2, - "name": "Author email must be a GitHub email address" - }, - "enforcement": "active", - "result": "pass", - "rule_type": "commit_author_email_pattern" - }, - { - "rule_source": { - "type": "protected_branch" - }, - "enforcement": "active", - "result": "fail", - "rule_type": "pull_request", - "details": "Changes must be made through a pull request." - }, - { - "rule_source": { - "type": "ruleset", - "id": 3, - "name": "Evaluate commit message pattern" + "type": "array", + "items": { + "title": "Ruleset version", + "type": "object", + "description": "The historical version of a ruleset", + "required": [ + "version_id", + "actor", + "updated_at" + ], + "properties": { + "version_id": { + "type": "integer", + "description": "The ID of the previous version of the ruleset" + }, + "actor": { + "type": "object", + "description": "The actor who updated the ruleset", + "properties": { + "id": { + "type": "integer" }, - "enforcement": "evaluate", - "result": "fail", - "rule_type": "commit_message_pattern" + "type": { + "type": "string" + } } - ] + }, + "updated_at": { + "type": "string", + "format": "date-time" + } } } + }, + "examples": { + "default": { + "value": [ + { + "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" + } + ] + } } } } @@ -663821,27 +676445,21 @@ "githubCloudOnly": false, "enabledForGitHubApps": true, "category": "repos", - "subcategory": "rule-suites" + "subcategory": "rules" } } }, - "/repos/{owner}/{repo}/rulesets/{ruleset_id}": { + "/repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id}": { "get": { - "summary": "Get a repository ruleset", - "description": "Get a ruleset for a repository.\n\n**Note:** To prevent leaking sensitive information, the `bypass_actors` property is only returned if the user\nmaking the API request has write access to the ruleset.", + "summary": "Get repository ruleset version", + "description": "Get a version of a repository ruleset.", "tags": [ "repos" ], - "operationId": "repos/get-repo-ruleset", + "operationId": "repos/get-repo-ruleset-version", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#get-a-repository-ruleset" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" + "url": "https://docs.github.com/rest/repos/rules#get-repository-ruleset-version" }, "parameters": [ { @@ -663872,13 +676490,12 @@ } }, { - "name": "includes_parents", - "description": "Include rulesets configured at higher levels that apply to this repository", - "in": "query", - "required": false, + "name": "version_id", + "description": "The ID of the version", + "in": "path", + "required": true, "schema": { - "type": "boolean", - "default": true + "type": "integer" } } ], @@ -663888,1510 +676505,2053 @@ "content": { "application/json": { "schema": { - "title": "Repository ruleset", - "type": "object", - "description": "A set of rules to apply when specified conditions are met.", - "required": [ - "id", - "name", - "source", - "enforcement" - ], - "properties": { - "id": { - "type": "integer", - "description": "The ID of the ruleset" - }, - "name": { - "type": "string", - "description": "The name of the ruleset" - }, - "target": { - "type": "string", - "description": "The target of the ruleset", - "enum": [ - "branch", - "tag", - "push", - "repository" - ] - }, - "source_type": { - "type": "string", - "description": "The type of the source of the ruleset", - "enum": [ - "Repository", - "Organization", - "Enterprise" - ] - }, - "source": { - "type": "string", - "description": "The name of the source" - }, - "enforcement": { - "type": "string", - "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", - "enum": [ - "disabled", - "active", - "evaluate" - ] - }, - "bypass_actors": { - "type": "array", - "description": "The actors that can bypass the rules in this ruleset", - "items": { - "title": "Repository Ruleset Bypass Actor", - "type": "object", - "description": "An actor that can bypass rules in a ruleset", - "required": [ - "actor_type" - ], - "properties": { - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." - }, - "actor_type": { - "type": "string", - "enum": [ - "Integration", - "OrganizationAdmin", - "RepositoryRole", - "Team", - "DeployKey", - "User" - ], - "description": "The type of actor that can bypass a ruleset." - }, - "bypass_mode": { - "type": "string", - "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", - "enum": [ - "always", - "pull_request", - "exempt" - ], - "default": "always" - } - } - } - }, - "current_user_can_bypass": { - "type": "string", - "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", - "enum": [ - "always", - "pull_requests_only", - "never", - "exempt" - ] - }, - "node_id": { - "type": "string" - }, - "_links": { + "allOf": [ + { + "title": "Ruleset version", "type": "object", + "description": "The historical version of a ruleset", + "required": [ + "version_id", + "actor", + "updated_at" + ], "properties": { - "self": { + "version_id": { + "type": "integer", + "description": "The ID of the previous version of the ruleset" + }, + "actor": { "type": "object", + "description": "The actor who updated the ruleset", "properties": { - "href": { - "type": "string", - "description": "The URL of the ruleset" + "id": { + "type": "integer" + }, + "type": { + "type": "string" } } }, - "html": { - "type": [ - "object", - "null" - ], - "properties": { - "href": { - "type": "string", - "description": "The html URL of the ruleset" - } - } + "updated_at": { + "type": "string", + "format": "date-time" } } }, - "conditions": { - "anyOf": [ - { - "title": "Repository ruleset conditions for ref names", + { + "type": "object", + "required": [ + "state" + ], + "properties": { + "state": { "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } + "description": "The state of the ruleset version" + } + } + } + ] + }, + "examples": { + "default": { + "value": { + "version_id": 3, + "actor": { + "id": 1, + "type": "User" + }, + "updated_at": "2024-10-23T16:29:47Z", + "state": { + "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*" + ] } }, - { - "title": "Organization ruleset conditions", - "type": "object", - "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", - "oneOf": [ - { - "type": "object", - "title": "repository_name_and_ref_name", - "description": "Conditions to target repositories by name and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository names", - "type": "object", - "description": "Parameters for a repository name condition", - "properties": { - "repository_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - }, - "protected": { - "type": "boolean", - "description": "Whether renaming of target repositories is prevented." - } - } - } - }, - "required": [ - "repository_name" - ] - } - ] - }, - { - "type": "object", - "title": "repository_id_and_ref_name", - "description": "Conditions to target repositories by id and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository IDs", - "type": "object", - "description": "Parameters for a repository ID condition", - "properties": { - "repository_id": { - "type": "object", - "properties": { - "repository_ids": { - "type": "array", - "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", - "items": { - "type": "integer" - } - } - } - } - }, - "required": [ - "repository_id" - ] - } - ] - }, - { - "type": "object", - "title": "repository_property_and_ref_name", - "description": "Conditions to target repositories by property and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository properties", - "type": "object", - "description": "Parameters for a repository property condition", - "properties": { - "repository_property": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - }, - "exclude": { - "type": "array", - "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - } - } - } - }, - "required": [ - "repository_property" - ] - } - ] + "rules": [ + { + "type": "commit_author_email_pattern", + "parameters": { + "operator": "contains", + "pattern": "github" } - ] - } - ], - "type": [ - "null", - "object" - ] + } + ] + } + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "rules": { - "type": "array", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule.", - "oneOf": [ + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "500": { + "description": "Internal Error", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "repos", + "subcategory": "rules" + } + } + }, + "/repos/{owner}/{repo}/secret-scanning/alerts": { + "get": { + "summary": "List secret scanning alerts for a repository", + "description": "Lists secret scanning alerts for an eligible repository, from newest to oldest.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "tags": [ + "secret-scanning" + ], + "operationId": "secret-scanning/list-alerts-for-repo", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-a-repository" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "state", + "in": "query", + "description": "Set to `open` or `resolved` to only list secret scanning alerts in a specific state.", + "required": false, + "schema": { + "type": "string", + "enum": [ + "open", + "resolved" + ] + } + }, + { + "name": "secret_type", + "in": "query", + "description": "A comma-separated list of secret types to return. All default secret patterns are returned. To return generic patterns, pass the token name(s) in the parameter. See \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets)\" for a complete list of secret types.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "exclude_secret_types", + "in": "query", + "description": "A comma-separated list of secret types to exclude from the results. All default secret patterns are returned except those matching the specified types. Cannot be combined with the `secret_type` parameter. See \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets)\" for a complete list of secret types.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "exclude_providers", + "in": "query", + "description": "A comma-separated list of provider slugs to exclude from the results.\nProvider slugs use lowercase with underscores (e.g., `github_secret_scanning`, `clojars`).\nYou can find the provider slug in the `provider_slug` field of each alert.\nCannot be combined with the `providers` parameter.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "providers", + "in": "query", + "description": "A comma-separated list of provider slugs to filter by.\nProvider slugs use lowercase with underscores (e.g., `github_secret_scanning`, `clojars`).\nYou can find the provider slug in the `provider_slug` field of each alert.\nCannot be combined with the `exclude_providers` parameter.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "resolution", + "in": "query", + "description": "A comma-separated list of resolutions. Only secret scanning alerts with one of these resolutions are listed. Valid resolutions are `false_positive`, `wont_fix`, `revoked`, `pattern_edited`, `pattern_deleted` or `used_in_tests`.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "assignee", + "in": "query", + "description": "Filters alerts by assignee. Use `*` to get all assigned alerts, `none` to get all unassigned alerts, or a GitHub username to get alerts assigned to a specific user.", + "required": false, + "schema": { + "type": "string" + }, + "examples": { + "assigned-to-user": { + "value": "octocat", + "summary": "Filter for alerts assigned to the user \"octocat\"" + }, + "all-assigned": { + "value": "*", + "summary": "Filter for all assigned alerts" + }, + "all-unassigned": { + "value": "none", + "summary": "Filter for all unassigned alerts" + } + } + }, + { + "name": "sort", + "description": "The property to sort the results by. `created` means when the alert was created. `updated` means when the alert was updated or resolved.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created", + "updated" + ], + "default": "created" + } + }, + { + "name": "direction", + "description": "The direction to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "desc" + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "before", + "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for events before this cursor. To receive an initial cursor on your first request, include an empty \"before\" query string.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "after", + "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for events after this cursor. To receive an initial cursor on your first request, include an empty \"after\" query string.", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "validity", + "in": "query", + "description": "A comma-separated list of validities that, when present, will return alerts that match the validities in this list. Valid options are `active`, `inactive`, and `unknown`.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "is_publicly_leaked", + "in": "query", + "description": "A boolean value representing whether or not to filter alerts by the publicly-leaked tag being present.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "is_multi_repo", + "in": "query", + "description": "A boolean value representing whether or not to filter alerts by the multi-repo tag being present.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "hide_secret", + "in": "query", + "description": "A boolean value representing whether or not to hide literal secrets in the results.", + "required": false, + "schema": { + "type": "boolean", + "default": false + } + }, + { + "name": "is_bypassed", + "in": "query", + "description": "A boolean value (`true` or `false`) indicating whether to filter alerts by their push protection bypass status. When set to `true`, only alerts that were created because a push protection rule was bypassed will be returned. When set to `false`, only alerts that were not caused by a push protection bypass will be returned.", + "required": false, + "schema": { + "type": "boolean" + } + }, + { + "name": "included_metadata", + "in": "query", + "description": "A comma-separated list of metadata fields to filter alerts by. Only alerts that have all of the\nspecified metadata fields attached will be returned. Possible values are: `owner-email`, `owner-id`,\n`owner-name`, `secret-id`, `secret-name`, `secret-issued-date`, `secret-expiration-date`, `organization-name`,\n`organization-id`, `last-used-date`, and `has-organization-access`.", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "owner_email_hash", + "in": "query", + "description": "Filters alerts to only those whose attached `owner_email` metadata field matches the\nprovided value. The value must be the lowercase hex-encoded SHA-256 hash of the email\naddress to match (for example, the SHA-256 of `user@example.com`). Only alerts that\nhave an `owner_email` metadata value whose SHA-256 hash equals this parameter are\nreturned.", + "required": false, + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "type": "object", + "properties": { + "number": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + }, + "created_at": { + "type": "string", + "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "updated_at": { + "anyOf": [ { - "title": "creation", - "description": "Only allow users with bypass permission to create matching refs.", + "type": "null" + }, + { + "type": "string", + "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + } + ] + }, + "url": { + "type": "string", + "description": "The REST API URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "html_url": { + "type": "string", + "description": "The GitHub URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "locations_url": { + "type": "string", + "format": "uri", + "description": "The REST API URL of the code locations for this alert." + }, + "state": { + "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", + "type": "string", + "enum": [ + "open", + "resolved" + ] + }, + "resolution": { + "type": [ + "string", + "null" + ], + "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", + "enum": [ + "false_positive", + "wont_fix", + "revoked", + "used_in_tests", + null + ] + }, + "resolved_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "resolved_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { - "type": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { "type": "string", - "enum": [ - "creation" + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" ] - } - } - }, - { - "title": "update", - "description": "Only allow users with bypass permission to update matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "gists_url": { "type": "string", - "enum": [ - "update" + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "parameters": { - "type": "object", - "properties": { - "update_allows_fetch_and_merge": { - "type": "boolean", - "description": "Branch can pull changes from its upstream repository" - } - }, - "required": [ - "update_allows_fetch_and_merge" + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] - } - } - }, - { - "title": "deletion", - "description": "Only allow users with bypass permissions to delete matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, "type": { "type": "string", - "enum": [ - "deletion" + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - } + }, + "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" + ] + } + ] + }, + "resolution_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment to resolve an alert." + }, + "secret_type": { + "type": "string", + "description": "The type of secret that secret scanning detected." + }, + "secret_type_display_name": { + "type": "string", + "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" + }, + "provider": { + "type": [ + "string", + "null" + ], + "description": "The provider of the secret that was detected." + }, + "provider_slug": { + "type": [ + "string", + "null" + ], + "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." + }, + "secret": { + "type": "string", + "description": "The secret that was detected." + }, + "push_protection_bypassed": { + "type": [ + "boolean", + "null" + ], + "description": "Whether push protection was bypassed for the detected secret." + }, + "push_protection_bypassed_by": { + "anyOf": [ + { + "type": "null" }, { - "title": "required_linear_history", - "description": "Prevent merge commits from being pushed to matching refs.", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, "type": { "type": "string", - "enum": [ - "required_linear_history" + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - } + }, + "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" + ] + } + ] + }, + "push_protection_bypassed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "push_protection_bypass_request_reviewer": { + "anyOf": [ + { + "type": "null" }, { - "title": "merge_queue", - "description": "Merges must be performed via a merge queue.", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, "type": { "type": "string", - "enum": [ - "merge_queue" + "examples": [ + "User" ] }, - "parameters": { + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "push_protection_bypass_request_reviewer_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment when reviewing a push protection bypass." + }, + "push_protection_bypass_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment when requesting a push protection bypass." + }, + "push_protection_bypass_request_html_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "description": "The URL to a push protection bypass request." + }, + "validity": { + "type": "string", + "description": "The token status as of the latest validity check.", + "enum": [ + "active", + "inactive", + "unknown" + ] + }, + "publicly_leaked": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was publicly leaked." + }, + "multi_repo": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." + }, + "is_base64_encoded": { + "type": [ + "boolean", + "null" + ], + "description": "A boolean value representing whether or not alert is base64 encoded" + }, + "first_location_detected": { + "anyOf": [ + { + "type": "null" + }, + { + "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", + "oneOf": [ + { + "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", "type": "object", "properties": { - "check_response_timeout_minutes": { - "type": "integer", - "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", - "minimum": 1, - "maximum": 360 - }, - "grouping_strategy": { + "path": { "type": "string", - "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", - "enum": [ - "ALLGREEN", - "HEADGREEN" + "description": "The file path in the repository", + "examples": [ + "/example/secrets.txt" ] }, - "max_entries_to_build": { - "type": "integer", - "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", - "minimum": 0, - "maximum": 100 + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "max_entries_to_merge": { - "type": "integer", - "description": "The maximum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" }, - "merge_method": { + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" + }, + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" + }, + "blob_sha": { "type": "string", - "description": "Method to use when merging changes from queued pull requests.", - "enum": [ - "MERGE", - "SQUASH", - "REBASE" + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" ] }, - "min_entries_to_merge": { - "type": "integer", - "description": "The minimum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 + "blob_url": { + "type": "string", + "description": "The API URL to get the associated blob resource" }, - "min_entries_to_merge_wait_minutes": { - "type": "integer", - "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", - "minimum": 0, - "maximum": 360 - } - }, - "required": [ - "check_response_timeout_minutes", - "grouping_strategy", - "max_entries_to_build", - "max_entries_to_merge", - "merge_method", - "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" - ] - } - } - }, - { - "title": "required_deployments", - "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_deployments" - ] - }, - "parameters": { - "type": "object", - "properties": { - "required_deployment_environments": { - "type": "array", - "description": "The environments that must be successfully deployed to before branches can be merged.", - "items": { - "type": "string" - } + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "commit_url": { + "type": "string", + "description": "The API URL to get the associated commit resource" + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL to get the associated commit resource.", + "examples": [ + "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" + ] } }, "required": [ - "required_deployment_environments" - ] - } - } - }, - { - "title": "required_signatures", - "description": "Commits pushed to matching refs must have verified signatures.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_signatures" - ] - } - } - }, - { - "title": "pull_request", - "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "pull_request" + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "blob_url", + "commit_sha", + "commit_url" ] }, - "parameters": { + { + "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", "type": "object", "properties": { - "allowed_merge_methods": { - "type": "array", - "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", - "items": { - "type": "string", - "enum": [ - "merge", - "squash", - "rebase" - ] - } + "path": { + "type": "string", + "description": "The file path of the wiki page", + "examples": [ + "/example/Home.md" + ] }, - "dismiss_stale_reviews_on_push": { - "type": "boolean", - "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "dismissal_restriction": { - "title": "DismissalRestriction", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "type": "object", - "properties": { - "allowed_actors": { - "type": "array", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "items": { - "title": "Actor", - "description": "An actor allowed to dismiss pull request reviews", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the actor that can dismiss reviews." - }, - "type": { - "type": "string", - "description": "The type of the actor", - "enum": [ - "User", - "Team", - "IntegrationInstallation", - "RepositoryRole" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "enabled": { - "type": "boolean", - "description": "Whether to restrict review dismissal to specific actors." - } - }, - "required": [ - "enabled" - ] + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" }, - "require_code_owner_review": { - "type": "boolean", - "description": "Require an approving review in pull requests that modify files that have a designated code owner." + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." }, - "require_last_push_approval": { - "type": "boolean", - "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." }, - "required_approving_review_count": { - "type": "integer", - "description": "The number of approving reviews that are required before a pull request can be merged.", - "minimum": 0, - "maximum": 10 + "blob_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] }, - "required_review_thread_resolution": { - "type": "boolean", - "description": "All conversations on code must be resolved before a pull request can be merged." + "page_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki page", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] }, - "required_reviewers": { - "type": "array", - "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", - "items": { - "title": "RequiredReviewerConfiguration", - "description": "A reviewing team, and file patterns describing which files they must approve changes to.", - "type": "object", - "properties": { - "file_patterns": { - "type": "array", - "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", - "items": { - "type": "string" - } - }, - "minimum_approvals": { - "type": "integer", - "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." - }, - "reviewer": { - "title": "Reviewer", - "description": "A required reviewing team", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the reviewer which must review changes to matching files." - }, - "type": { - "type": "string", - "description": "The type of the reviewer", - "enum": [ - "Team" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "required": [ - "file_patterns", - "minimum_approvals", - "reviewer" - ] - } + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + }, + "commit_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki commit", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] } }, "required": [ - "dismiss_stale_reviews_on_push", - "require_code_owner_review", - "require_last_push_approval", - "required_approving_review_count", - "required_review_thread_resolution" - ] - } - } - }, - { - "title": "required_status_checks", - "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_status_checks" + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "page_url", + "commit_sha", + "commit_url" ] }, - "parameters": { + { + "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", "type": "object", "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "required_status_checks": { - "type": "array", - "description": "Status checks that are required.", - "items": { - "title": "StatusCheckConfiguration", - "description": "Required status check", - "type": "object", - "properties": { - "context": { - "type": "string", - "description": "The status check context name that must be present on the commit." - }, - "integration_id": { - "type": "integer", - "description": "The optional integration ID that this status check must originate from." - } - }, - "required": [ - "context" - ] - } + "issue_title_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] }, - "strict_required_status_checks_policy": { - "type": "boolean", - "description": "Whether 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." + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" + ] } }, "required": [ - "required_status_checks", - "strict_required_status_checks_policy" - ] - } - } - }, - { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "non_fast_forward" - ] - } - } - }, - { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_message_pattern" + "issue_title_url" ] }, - "parameters": { + { + "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", "type": "object", "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "issue_body_url": { "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" ] }, - "pattern": { + "html_url": { "type": "string", - "description": "The pattern to match with." + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" + ] } }, "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_author_email_pattern" + "issue_body_url" ] }, - "parameters": { + { + "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", "type": "object", "properties": { - "name": { + "issue_comment_url": { "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." + "format": "uri", + "description": "The API URL to get the issue comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + ] }, - "operator": { + "html_url": { "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "format": "uri", + "description": "The GitHub URL for the issue comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" ] - }, - "pattern": { + } + }, + "required": [ + "issue_comment_url" + ] + }, + { + "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", + "type": "object", + "properties": { + "discussion_title_url": { "type": "string", - "description": "The pattern to match with." + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082" + ] } }, "required": [ - "operator", - "pattern" + "discussion_title_url" ] - } - } - }, - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "committer_email_pattern" + }, + { + "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", + "type": "object", + "properties": { + "discussion_body_url": { + "type": "string", + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussion-4566270" + ] + } + }, + "required": [ + "discussion_body_url" ] }, - "parameters": { + { + "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", "type": "object", "properties": { - "name": { + "discussion_comment_url": { "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "format": "uri", + "description": "The API URL to get the discussion comment where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + ] + } + }, + "required": [ + "discussion_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", + "type": "object", + "properties": { + "pull_request_title_url": { "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" ] }, - "pattern": { + "html_url": { "type": "string", - "description": "The pattern to match with." + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] } }, "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "branch_name_pattern" + "pull_request_title_url" ] }, - "parameters": { + { + "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", "type": "object", "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "pull_request_body_url": { "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" ] }, - "pattern": { + "html_url": { "type": "string", - "description": "The pattern to match with." + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] } }, "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "tag_name_pattern" + "pull_request_body_url" ] }, - "parameters": { + { + "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", "type": "object", "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { + "pull_request_comment_url": { "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" + "format": "uri", + "description": "The API URL to get the pull request comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" ] }, - "pattern": { + "html_url": { "type": "string", - "description": "The pattern to match with." + "format": "uri", + "description": "The GitHub URL for the pull request comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" + ] } }, "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "workflows" + "pull_request_comment_url" ] }, - "parameters": { + { + "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", "type": "object", "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." + "pull_request_review_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + ] }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } - }, - "required": [ - "path", - "repository_id" - ] - } + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" + ] } }, "required": [ - "workflows" - ] - } - } - }, - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "code_scanning" + "pull_request_review_url" ] }, - "parameters": { + { + "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", "type": "object", "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } - }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } + "pull_request_review_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" + ] } }, "required": [ - "code_scanning_tools" + "pull_request_review_comment_url" ] } - } + ] + } + ] + }, + "has_more_locations": { + "type": "boolean", + "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." + }, + "assigned_to": { + "anyOf": [ + { + "type": "null" }, { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { - "type": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { "type": "string", - "enum": [ - "copilot_code_review" + "examples": [ + "octocat" ] }, - "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." - } - } - } - } - }, - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { "type": "string", - "enum": [ - "license_compliance_scanning" + "examples": [ + "MDQ6VXNlcjE=" ] - } - } - }, - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "avatar_url": { "type": "string", - "enum": [ - "file_path_restriction" + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_paths" + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" ] - } - } - }, - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "url": { "type": "string", - "enum": [ - "max_file_path_length" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" ] }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 - } - }, - "required": [ - "max_file_path_length" + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" ] - } - } - }, - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, "type": { "type": "string", - "enum": [ - "file_extension_restriction" + "examples": [ + "User" ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_extensions" + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - } + }, + "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" + ] + } + ] + }, + "closure_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment from the closure request author." + }, + "closure_request_reviewer_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment from the closure request reviewer." + }, + "closure_request_reviewer": { + "anyOf": [ + { + "type": "null" }, { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, "type": { "type": "string", - "enum": [ - "max_file_size" + "examples": [ + "User" ] }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } - }, - "required": [ - "max_file_size" + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - } + }, + "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" + ] } ] } - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" } } }, "examples": { "default": { - "value": { - "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" + "value": [ + { + "number": 2, + "created_at": "2020-11-06T18:48:51Z", + "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/2", + "html_url": "https://github.com/owner/private-repo/security/secret-scanning/2", + "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/2/locations", + "state": "resolved", + "resolution": "false_positive", + "resolved_at": "2020-11-07T02:47:13Z", + "resolved_by": { + "login": "monalisa", + "id": 2, + "node_id": "MDQ6VXNlcjI=", + "avatar_url": "https://alambic.github.com/avatars/u/2?", + "gravatar_id": "", + "url": "https://api.github.com/users/monalisa", + "html_url": "https://github.com/monalisa", + "followers_url": "https://api.github.com/users/monalisa/followers", + "following_url": "https://api.github.com/users/monalisa/following{/other_user}", + "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", + "organizations_url": "https://api.github.com/users/monalisa/orgs", + "repos_url": "https://api.github.com/users/monalisa/repos", + "events_url": "https://api.github.com/users/monalisa/events{/privacy}", + "received_events_url": "https://api.github.com/users/monalisa/received_events", + "type": "User", + "site_admin": true + }, + "secret_type": "adafruit_io_key", + "secret_type_display_name": "Adafruit IO Key", + "secret": "aio_XXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "push_protection_bypassed_by": { + "login": "monalisa", + "id": 2, + "node_id": "MDQ6VXNlcjI=", + "avatar_url": "https://alambic.github.com/avatars/u/2?", + "gravatar_id": "", + "url": "https://api.github.com/users/monalisa", + "html_url": "https://github.com/monalisa", + "followers_url": "https://api.github.com/users/monalisa/followers", + "following_url": "https://api.github.com/users/monalisa/following{/other_user}", + "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", + "organizations_url": "https://api.github.com/users/monalisa/orgs", + "repos_url": "https://api.github.com/users/monalisa/repos", + "events_url": "https://api.github.com/users/monalisa/events{/privacy}", + "received_events_url": "https://api.github.com/users/monalisa/received_events", + "type": "User", + "site_admin": true + }, + "push_protection_bypassed": true, + "push_protection_bypassed_at": "2020-11-06T21:48:51Z", + "push_protection_bypass_request_reviewer": { + "login": "octocat", + "id": 3, + "node_id": "MDQ6VXNlcjI=", + "avatar_url": "https://alambic.github.com/avatars/u/3?", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": true + }, + "push_protection_bypass_request_reviewer_comment": "Example response", + "push_protection_bypass_request_comment": "Example comment", + "push_protection_bypass_request_html_url": "https://github.com/owner/repo/secret_scanning_exemptions/1", + "resolution_comment": "Example comment", + "validity": "inactive", + "publicly_leaked": false, + "multi_repo": false, + "is_base64_encoded": false, + "first_location_detected": { + "path": "/example/secrets.txt", + "start_line": 1, + "end_line": 1, + "start_column": 1, + "end_column": 64, + "blob_sha": "af5626b4a114abcb82d63db7c8082c3c4756e51b", + "blob_url": "https://api.github.com/repos/octocat/hello-world/git/blobs/af5626b4a114abcb82d63db7c8082c3c4756e51b", + "commit_sha": "f14d7debf9775f957cf4f1e8176da0786431f72b", + "commit_url": "https://api.github.com/repos/octocat/hello-world/git/commits/f14d7debf9775f957cf4f1e8176da0786431f72b" }, - "html": { - "href": "https://github.com/monalisa/my-repo/rules/42" + "has_more_locations": true, + "assigned_to": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false } - }, - "created_at": "2023-07-15T08:43:03Z", - "updated_at": "2023-08-23T16:29:47Z" - } + } + ] } } } } }, "404": { - "description": "Resource not found", + "description": "Repository is public or secret scanning is disabled for the repository" + }, + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { + "code": { "type": "string" }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } } } } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "secret-scanning" } - }, - "put": { - "summary": "Update a repository ruleset", - "description": "Update a ruleset for a repository.", + } + }, + "/repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}": { + "get": { + "summary": "Get a secret scanning alert", + "description": "Gets a single secret scanning alert detected in an eligible repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", "tags": [ - "repos" + "secret-scanning" ], - "operationId": "repos/update-repo-ruleset", + "operationId": "secret-scanning/get-alert", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#update-a-repository-ruleset" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#get-a-secret-scanning-alert" }, "parameters": [ { @@ -665413,3183 +678573,1583 @@ } }, { - "name": "ruleset_id", - "description": "The ID of the ruleset.", + "name": "alert_number", "in": "path", + "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", "required": true, "schema": { - "type": "integer" + "type": "integer", + "description": "The security alert number.", + "readOnly": true + } + }, + { + "name": "hide_secret", + "in": "query", + "description": "A boolean value representing whether or not to hide literal secrets in the results.", + "required": false, + "schema": { + "type": "boolean", + "default": false } } ], - "requestBody": { - "description": "Request body", - "required": false, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the ruleset." - }, - "target": { - "type": "string", - "description": "The target of the ruleset", - "enum": [ - "branch", - "tag", - "push" - ] - }, - "enforcement": { - "type": "string", - "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", - "enum": [ - "disabled", - "active", - "evaluate" - ] - }, - "bypass_actors": { - "type": "array", - "description": "The actors that can bypass the rules in this ruleset", - "items": { - "title": "Repository Ruleset Bypass Actor", - "type": "object", - "description": "An actor that can bypass rules in a ruleset", - "required": [ - "actor_type" - ], - "properties": { - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." - }, - "actor_type": { - "type": "string", - "enum": [ - "Integration", - "OrganizationAdmin", - "RepositoryRole", - "Team", - "DeployKey", - "User" - ], - "description": "The type of actor that can bypass a ruleset." - }, - "bypass_mode": { - "type": "string", - "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", - "enum": [ - "always", - "pull_request", - "exempt" - ], - "default": "always" - } - } - } - }, - "conditions": { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - "rules": { - "description": "An array of rules within the ruleset.", - "type": "array", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule.", - "oneOf": [ - { - "title": "creation", - "description": "Only allow users with bypass permission to create matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "creation" - ] - } - } - }, - { - "title": "update", - "description": "Only allow users with bypass permission to update matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "update" - ] - }, - "parameters": { - "type": "object", - "properties": { - "update_allows_fetch_and_merge": { - "type": "boolean", - "description": "Branch can pull changes from its upstream repository" - } - }, - "required": [ - "update_allows_fetch_and_merge" - ] - } - } - }, - { - "title": "deletion", - "description": "Only allow users with bypass permissions to delete matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "deletion" - ] - } - } - }, - { - "title": "required_linear_history", - "description": "Prevent merge commits from being pushed to matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_linear_history" - ] - } - } - }, - { - "title": "merge_queue", - "description": "Merges must be performed via a merge queue.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "merge_queue" - ] - }, - "parameters": { - "type": "object", - "properties": { - "check_response_timeout_minutes": { - "type": "integer", - "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", - "minimum": 1, - "maximum": 360 - }, - "grouping_strategy": { - "type": "string", - "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", - "enum": [ - "ALLGREEN", - "HEADGREEN" - ] - }, - "max_entries_to_build": { - "type": "integer", - "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", - "minimum": 0, - "maximum": 100 - }, - "max_entries_to_merge": { - "type": "integer", - "description": "The maximum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "merge_method": { - "type": "string", - "description": "Method to use when merging changes from queued pull requests.", - "enum": [ - "MERGE", - "SQUASH", - "REBASE" - ] - }, - "min_entries_to_merge": { - "type": "integer", - "description": "The minimum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "min_entries_to_merge_wait_minutes": { - "type": "integer", - "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", - "minimum": 0, - "maximum": 360 - } - }, - "required": [ - "check_response_timeout_minutes", - "grouping_strategy", - "max_entries_to_build", - "max_entries_to_merge", - "merge_method", - "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" - ] - } - } - }, - { - "title": "required_deployments", - "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_deployments" - ] - }, - "parameters": { - "type": "object", - "properties": { - "required_deployment_environments": { - "type": "array", - "description": "The environments that must be successfully deployed to before branches can be merged.", - "items": { - "type": "string" - } - } - }, - "required": [ - "required_deployment_environments" - ] - } - } - }, - { - "title": "required_signatures", - "description": "Commits pushed to matching refs must have verified signatures.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_signatures" - ] - } - } - }, - { - "title": "pull_request", - "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "pull_request" - ] - }, - "parameters": { - "type": "object", - "properties": { - "allowed_merge_methods": { - "type": "array", - "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", - "items": { - "type": "string", - "enum": [ - "merge", - "squash", - "rebase" - ] - } - }, - "dismiss_stale_reviews_on_push": { - "type": "boolean", - "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." - }, - "dismissal_restriction": { - "title": "DismissalRestriction", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "type": "object", - "properties": { - "allowed_actors": { - "type": "array", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "items": { - "title": "Actor", - "description": "An actor allowed to dismiss pull request reviews", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the actor that can dismiss reviews." - }, - "type": { - "type": "string", - "description": "The type of the actor", - "enum": [ - "User", - "Team", - "IntegrationInstallation", - "RepositoryRole" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "enabled": { - "type": "boolean", - "description": "Whether to restrict review dismissal to specific actors." - } - }, - "required": [ - "enabled" - ] - }, - "require_code_owner_review": { - "type": "boolean", - "description": "Require an approving review in pull requests that modify files that have a designated code owner." - }, - "require_last_push_approval": { - "type": "boolean", - "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." - }, - "required_approving_review_count": { - "type": "integer", - "description": "The number of approving reviews that are required before a pull request can be merged.", - "minimum": 0, - "maximum": 10 - }, - "required_review_thread_resolution": { - "type": "boolean", - "description": "All conversations on code must be resolved before a pull request can be merged." - }, - "required_reviewers": { - "type": "array", - "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", - "items": { - "title": "RequiredReviewerConfiguration", - "description": "A reviewing team, and file patterns describing which files they must approve changes to.", - "type": "object", - "properties": { - "file_patterns": { - "type": "array", - "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", - "items": { - "type": "string" - } - }, - "minimum_approvals": { - "type": "integer", - "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." - }, - "reviewer": { - "title": "Reviewer", - "description": "A required reviewing team", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the reviewer which must review changes to matching files." - }, - "type": { - "type": "string", - "description": "The type of the reviewer", - "enum": [ - "Team" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "required": [ - "file_patterns", - "minimum_approvals", - "reviewer" - ] - } - } - }, - "required": [ - "dismiss_stale_reviews_on_push", - "require_code_owner_review", - "require_last_push_approval", - "required_approving_review_count", - "required_review_thread_resolution" - ] - } - } - }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "number": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + }, + "created_at": { + "type": "string", + "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "updated_at": { + "anyOf": [ { - "title": "required_status_checks", - "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_status_checks" - ] - }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "required_status_checks": { - "type": "array", - "description": "Status checks that are required.", - "items": { - "title": "StatusCheckConfiguration", - "description": "Required status check", - "type": "object", - "properties": { - "context": { - "type": "string", - "description": "The status check context name that must be present on the commit." - }, - "integration_id": { - "type": "integer", - "description": "The optional integration ID that this status check must originate from." - } - }, - "required": [ - "context" - ] - } - }, - "strict_required_status_checks_policy": { - "type": "boolean", - "description": "Whether 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." - } - }, - "required": [ - "required_status_checks", - "strict_required_status_checks_policy" - ] - } - } + "type": "null" }, { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "non_fast_forward" - ] - } - } - }, + "type": "string", + "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + } + ] + }, + "url": { + "type": "string", + "description": "The REST API URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "html_url": { + "type": "string", + "description": "The GitHub URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "locations_url": { + "type": "string", + "format": "uri", + "description": "The REST API URL of the code locations for this alert." + }, + "state": { + "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", + "type": "string", + "enum": [ + "open", + "resolved" + ] + }, + "resolution": { + "type": [ + "string", + "null" + ], + "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", + "enum": [ + "false_positive", + "wont_fix", + "revoked", + "used_in_tests", + null + ] + }, + "resolved_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "resolved_by": { + "anyOf": [ { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_message_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } + "type": "null" }, { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "required": [ - "type" - ], "properties": { - "type": { - "type": "string", - "enum": [ - "commit_author_email_pattern" + "name": { + "type": [ + "string", + "null" ] }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "committer_email_pattern" + "email": { + "type": [ + "string", + "null" ] }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + "login": { "type": "string", - "enum": [ - "branch_name_pattern" + "examples": [ + "octocat" ] }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "tag_name_pattern" + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 ] }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } - }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + "node_id": { "type": "string", - "enum": [ - "workflows" + "examples": [ + "MDQ6VXNlcjE=" ] - }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } - }, - "required": [ - "path", - "repository_id" - ] - } - } - }, - "required": [ - "workflows" + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" ] - } - } - }, - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { "type": "string", - "enum": [ - "code_scanning" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" ] }, - "parameters": { - "type": "object", - "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } - }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } - } - }, - "required": [ - "code_scanning_tools" + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" ] - } - } - }, - { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "followers_url": { "type": "string", - "enum": [ - "copilot_code_review" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" ] }, - "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." - } - } - } - } - }, - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + "following_url": { "type": "string", - "enum": [ - "license_compliance_scanning" + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" ] - } - } - }, - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "gists_url": { "type": "string", - "enum": [ - "file_path_restriction" + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_paths" + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] - } - } - }, - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "subscriptions_url": { "type": "string", - "enum": [ - "max_file_path_length" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" ] }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 - } - }, - "required": [ - "max_file_path_length" + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" ] - } - } - }, - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { + }, + "repos_url": { "type": "string", - "enum": [ - "file_extension_restriction" + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } - }, - "required": [ - "restricted_file_extensions" + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" ] - } - } - }, - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, "type": { "type": "string", - "enum": [ - "max_file_size" + "examples": [ + "User" ] }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } - }, - "required": [ - "max_file_size" + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } - } + }, + "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" + ] } ] - } - } - } - }, - "examples": { - "default": { - "value": { - "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" - } - } - ] - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Repository ruleset", - "type": "object", - "description": "A set of rules to apply when specified conditions are met.", - "required": [ - "id", - "name", - "source", - "enforcement" - ], - "properties": { - "id": { - "type": "integer", - "description": "The ID of the ruleset" - }, - "name": { - "type": "string", - "description": "The name of the ruleset" }, - "target": { - "type": "string", - "description": "The target of the ruleset", - "enum": [ - "branch", - "tag", - "push", - "repository" - ] + "resolution_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment to resolve an alert." }, - "source_type": { + "secret_type": { "type": "string", - "description": "The type of the source of the ruleset", - "enum": [ - "Repository", - "Organization", - "Enterprise" - ] + "description": "The type of secret that secret scanning detected." }, - "source": { + "secret_type_display_name": { "type": "string", - "description": "The name of the source" + "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" }, - "enforcement": { - "type": "string", - "description": "The enforcement level of the ruleset. `evaluate` allows admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).", - "enum": [ - "disabled", - "active", - "evaluate" - ] + "provider": { + "type": [ + "string", + "null" + ], + "description": "The provider of the secret that was detected." }, - "bypass_actors": { - "type": "array", - "description": "The actors that can bypass the rules in this ruleset", - "items": { - "title": "Repository Ruleset Bypass Actor", - "type": "object", - "description": "An actor that can bypass rules in a ruleset", - "required": [ - "actor_type" - ], - "properties": { - "actor_id": { - "type": [ - "integer", - "null" - ], - "description": "The ID of the actor that can bypass a ruleset. Required for `Integration`, `RepositoryRole`, `Team`, and `User` actor types. If `actor_type` is `OrganizationAdmin`, `actor_id` is ignored. If `actor_type` is `DeployKey`, this should be null. `OrganizationAdmin` is not applicable for personal repositories." - }, - "actor_type": { - "type": "string", - "enum": [ - "Integration", - "OrganizationAdmin", - "RepositoryRole", - "Team", - "DeployKey", - "User" - ], - "description": "The type of actor that can bypass a ruleset." - }, - "bypass_mode": { - "type": "string", - "description": "When the specified actor can bypass the ruleset. `pull_request` means that an actor can only bypass rules on pull requests. `pull_request` is not applicable for the `DeployKey` actor type. Also, `pull_request` is only applicable to branch rulesets. When `bypass_mode` is `exempt`, rules will not be run for that actor and a bypass audit entry will not be created.", - "enum": [ - "always", - "pull_request", - "exempt" - ], - "default": "always" - } - } - } + "provider_slug": { + "type": [ + "string", + "null" + ], + "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." }, - "current_user_can_bypass": { + "secret": { "type": "string", - "description": "The bypass type of the user making the API request for this ruleset. This field is only returned when\nquerying the repository-level endpoint.", - "enum": [ - "always", - "pull_requests_only", - "never", - "exempt" - ] + "description": "The secret that was detected." }, - "node_id": { - "type": "string" + "push_protection_bypassed": { + "type": [ + "boolean", + "null" + ], + "description": "Whether push protection was bypassed for the detected secret." }, - "_links": { - "type": "object", - "properties": { - "self": { + "push_protection_bypassed_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "href": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { "type": "string", - "description": "The URL of the ruleset" - } - } - }, - "html": { - "type": [ - "object", - "null" - ], - "properties": { - "href": { + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { "type": "string", - "description": "The html URL of the ruleset" + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } - } + }, + "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" + ] } - } + ] }, - "conditions": { + "push_protection_bypassed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "push_protection_bypass_request_reviewer": { "anyOf": [ { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } + "type": "null" }, { - "title": "Organization ruleset conditions", + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "description": "Conditions for an organization ruleset.\nThe branch and tag rulesets conditions object should contain both `repository_name` and `ref_name` properties, or both `repository_id` and `ref_name` properties, or both `repository_property` and `ref_name` properties.\nThe push rulesets conditions object does not require the `ref_name` property.\nFor repository policy rulesets, the conditions object should only contain the `repository_name`, the `repository_id`, or the `repository_property`.", - "oneOf": [ - { - "type": "object", - "title": "repository_name_and_ref_name", - "description": "Conditions to target repositories by name and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository names", - "type": "object", - "description": "Parameters for a repository name condition", - "properties": { - "repository_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - }, - "protected": { - "type": "boolean", - "description": "Whether renaming of target repositories is prevented." - } - } - } - }, - "required": [ - "repository_name" - ] - } + "properties": { + "name": { + "type": [ + "string", + "null" ] }, - { - "type": "object", - "title": "repository_id_and_ref_name", - "description": "Conditions to target repositories by id and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository IDs", - "type": "object", - "description": "Parameters for a repository ID condition", - "properties": { - "repository_id": { - "type": "object", - "properties": { - "repository_ids": { - "type": "array", - "description": "The repository IDs that the ruleset applies to. One of these IDs must match for the condition to pass.", - "items": { - "type": "integer" - } - } - } - } - }, - "required": [ - "repository_id" - ] - } + "email": { + "type": [ + "string", + "null" ] }, - { - "type": "object", - "title": "repository_property_and_ref_name", - "description": "Conditions to target repositories by property and refs by name", - "allOf": [ - { - "title": "Repository ruleset conditions for ref names", - "type": "object", - "description": "Parameters for a repository ruleset ref name condition", - "properties": { - "ref_name": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.", - "items": { - "type": "string" - } - }, - "exclude": { - "type": "array", - "description": "Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.", - "items": { - "type": "string" - } - } - } - } - } - }, - { - "title": "Repository ruleset conditions for repository properties", - "type": "object", - "description": "Parameters for a repository property condition", - "properties": { - "repository_property": { - "type": "object", - "properties": { - "include": { - "type": "array", - "description": "The repository properties and values to include. All of these properties must match for the condition to pass.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - }, - "exclude": { - "type": "array", - "description": "The repository properties and values to exclude. The condition will not pass if any of these properties match.", - "items": { - "title": "Repository ruleset property targeting definition", - "type": "object", - "description": "Parameters for a targeting a repository property", - "properties": { - "name": { - "type": "string", - "description": "The name of the repository property to target" - }, - "property_values": { - "type": "array", - "description": "The values to match for the repository property", - "items": { - "type": "string" - } - }, - "source": { - "type": "string", - "description": "The source of the repository property. Defaults to 'custom' if not specified.", - "enum": [ - "custom", - "system" - ] - } - }, - "required": [ - "name", - "property_values" - ] - } - } - } - } - }, - "required": [ - "repository_property" - ] - } + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" ] } + }, + "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" ] } + ] + }, + "push_protection_bypass_request_reviewer_comment": { + "type": [ + "string", + "null" ], + "description": "An optional comment when reviewing a push protection bypass." + }, + "push_protection_bypass_request_comment": { "type": [ - "null", - "object" + "string", + "null" + ], + "description": "An optional comment when requesting a push protection bypass." + }, + "push_protection_bypass_request_html_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "description": "The URL to a push protection bypass request." + }, + "validity": { + "type": "string", + "description": "The token status as of the latest validity check.", + "enum": [ + "active", + "inactive", + "unknown" ] }, - "rules": { - "type": "array", - "items": { - "title": "Repository Rule", - "type": "object", - "description": "A repository rule.", - "oneOf": [ - { - "title": "creation", - "description": "Only allow users with bypass permission to create matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "creation" - ] - } - } - }, - { - "title": "update", - "description": "Only allow users with bypass permission to update matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "update" - ] - }, - "parameters": { - "type": "object", - "properties": { - "update_allows_fetch_and_merge": { - "type": "boolean", - "description": "Branch can pull changes from its upstream repository" - } + "publicly_leaked": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was publicly leaked." + }, + "multi_repo": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." + }, + "is_base64_encoded": { + "type": [ + "boolean", + "null" + ], + "description": "A boolean value representing whether or not alert is base64 encoded" + }, + "first_location_detected": { + "anyOf": [ + { + "type": "null" + }, + { + "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", + "oneOf": [ + { + "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The file path in the repository", + "examples": [ + "/example/secrets.txt" + ] }, - "required": [ - "update_allows_fetch_and_merge" - ] - } - } - }, - { - "title": "deletion", - "description": "Only allow users with bypass permissions to delete matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "deletion" - ] - } - } - }, - { - "title": "required_linear_history", - "description": "Prevent merge commits from being pushed to matching refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_linear_history" - ] - } - } - }, - { - "title": "merge_queue", - "description": "Merges must be performed via a merge queue.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "merge_queue" - ] - }, - "parameters": { - "type": "object", - "properties": { - "check_response_timeout_minutes": { - "type": "integer", - "description": "Maximum time for a required status check to report a conclusion. After this much time has elapsed, checks that have not reported a conclusion will be assumed to have failed", - "minimum": 1, - "maximum": 360 - }, - "grouping_strategy": { - "type": "string", - "description": "When set to ALLGREEN, the merge commit created by merge queue for each PR in the group must pass all required checks to merge. When set to HEADGREEN, only the commit at the head of the merge group, i.e. the commit containing changes from all of the PRs in the group, must pass its required checks to merge.", - "enum": [ - "ALLGREEN", - "HEADGREEN" - ] - }, - "max_entries_to_build": { - "type": "integer", - "description": "Limit the number of queued pull requests requesting checks and workflow runs at the same time.", - "minimum": 0, - "maximum": 100 - }, - "max_entries_to_merge": { - "type": "integer", - "description": "The maximum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "merge_method": { - "type": "string", - "description": "Method to use when merging changes from queued pull requests.", - "enum": [ - "MERGE", - "SQUASH", - "REBASE" - ] - }, - "min_entries_to_merge": { - "type": "integer", - "description": "The minimum number of PRs that will be merged together in a group.", - "minimum": 0, - "maximum": 100 - }, - "min_entries_to_merge_wait_minutes": { - "type": "integer", - "description": "The time merge queue should wait after the first PR is added to the queue for the minimum group size to be met. After this time has elapsed, the minimum group size will be ignored and a smaller group will be merged.", - "minimum": 0, - "maximum": 360 - } + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "required": [ - "check_response_timeout_minutes", - "grouping_strategy", - "max_entries_to_build", - "max_entries_to_merge", - "merge_method", - "min_entries_to_merge", - "min_entries_to_merge_wait_minutes" - ] - } - } - }, - { - "title": "required_deployments", - "description": "Choose which environments must be successfully deployed to before refs can be pushed into a ref that matches this rule.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_deployments" - ] - }, - "parameters": { - "type": "object", - "properties": { - "required_deployment_environments": { - "type": "array", - "description": "The environments that must be successfully deployed to before branches can be merged.", - "items": { - "type": "string" - } - } + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" }, - "required": [ - "required_deployment_environments" - ] - } - } - }, - { - "title": "required_signatures", - "description": "Commits pushed to matching refs must have verified signatures.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_signatures" - ] - } - } - }, - { - "title": "pull_request", - "description": "Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "pull_request" - ] - }, - "parameters": { - "type": "object", - "properties": { - "allowed_merge_methods": { - "type": "array", - "description": "Array of allowed merge methods. Allowed values include `merge`, `squash`, and `rebase`. At least one option must be enabled.", - "items": { - "type": "string", - "enum": [ - "merge", - "squash", - "rebase" - ] - } - }, - "dismiss_stale_reviews_on_push": { - "type": "boolean", - "description": "New, reviewable commits pushed will dismiss previous pull request review approvals." - }, - "dismissal_restriction": { - "title": "DismissalRestriction", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "type": "object", - "properties": { - "allowed_actors": { - "type": "array", - "description": "Specify people, teams, or apps allowed to dismiss pull request reviews.", - "items": { - "title": "Actor", - "description": "An actor allowed to dismiss pull request reviews", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the actor that can dismiss reviews." - }, - "type": { - "type": "string", - "description": "The type of the actor", - "enum": [ - "User", - "Team", - "IntegrationInstallation", - "RepositoryRole" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "enabled": { - "type": "boolean", - "description": "Whether to restrict review dismissal to specific actors." - } - }, - "required": [ - "enabled" - ] - }, - "require_code_owner_review": { - "type": "boolean", - "description": "Require an approving review in pull requests that modify files that have a designated code owner." - }, - "require_last_push_approval": { - "type": "boolean", - "description": "Whether the most recent reviewable push must be approved by someone other than the person who pushed it." - }, - "required_approving_review_count": { - "type": "integer", - "description": "The number of approving reviews that are required before a pull request can be merged.", - "minimum": 0, - "maximum": 10 - }, - "required_review_thread_resolution": { - "type": "boolean", - "description": "All conversations on code must be resolved before a pull request can be merged." - }, - "required_reviewers": { - "type": "array", - "description": "> [!NOTE]\n> `required_reviewers` is in beta and subject to change.\n\nA collection of reviewers and associated file patterns. Each reviewer has a list of file patterns which determine the files that reviewer is required to review.", - "items": { - "title": "RequiredReviewerConfiguration", - "description": "A reviewing team, and file patterns describing which files they must approve changes to.", - "type": "object", - "properties": { - "file_patterns": { - "type": "array", - "description": "Array of file patterns. Pull requests which change matching files must be approved by the specified team. File patterns use fnmatch syntax.", - "items": { - "type": "string" - } - }, - "minimum_approvals": { - "type": "integer", - "description": "Minimum number of approvals required from the specified team. If set to zero, the team will be added to the pull request but approval is optional." - }, - "reviewer": { - "title": "Reviewer", - "description": "A required reviewing team", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "ID of the reviewer which must review changes to matching files." - }, - "type": { - "type": "string", - "description": "The type of the reviewer", - "enum": [ - "Team" - ] - } - }, - "required": [ - "id", - "type" - ] - } - }, - "required": [ - "file_patterns", - "minimum_approvals", - "reviewer" - ] - } - } + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" }, - "required": [ - "dismiss_stale_reviews_on_push", - "require_code_owner_review", - "require_last_push_approval", - "required_approving_review_count", - "required_review_thread_resolution" - ] - } - } - }, - { - "title": "required_status_checks", - "description": "Choose which status checks must pass before the ref is updated. When enabled, commits must first be pushed to another ref where the checks pass.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "required_status_checks" - ] - }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "required_status_checks": { - "type": "array", - "description": "Status checks that are required.", - "items": { - "title": "StatusCheckConfiguration", - "description": "Required status check", - "type": "object", - "properties": { - "context": { - "type": "string", - "description": "The status check context name that must be present on the commit." - }, - "integration_id": { - "type": "integer", - "description": "The optional integration ID that this status check must originate from." - } - }, - "required": [ - "context" - ] - } - }, - "strict_required_status_checks_policy": { - "type": "boolean", - "description": "Whether 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." - } + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" }, - "required": [ - "required_status_checks", - "strict_required_status_checks_policy" - ] - } - } - }, - { - "title": "non_fast_forward", - "description": "Prevent users with push access from force pushing to refs.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "non_fast_forward" - ] - } - } - }, - { - "title": "commit_message_pattern", - "description": "Parameters to be used for the commit_message_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_message_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "blob_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "commit_author_email_pattern", - "description": "Parameters to be used for the commit_author_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "commit_author_email_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "blob_url": { + "type": "string", + "description": "The API URL to get the associated blob resource" }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "committer_email_pattern", - "description": "Parameters to be used for the committer_email_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "committer_email_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "branch_name_pattern", - "description": "Parameters to be used for the branch_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "branch_name_pattern" - ] - }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "commit_url": { + "type": "string", + "description": "The API URL to get the associated commit resource" }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "tag_name_pattern", - "description": "Parameters to be used for the tag_name_pattern rule", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "tag_name_pattern" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL to get the associated commit resource.", + "examples": [ + "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "How this rule appears when configuring it." - }, - "negate": { - "type": "boolean", - "description": "If true, the rule will fail if the pattern matches." - }, - "operator": { - "type": "string", - "description": "The operator to use for matching.", - "enum": [ - "starts_with", - "ends_with", - "contains", - "regex" - ] - }, - "pattern": { - "type": "string", - "description": "The pattern to match with." - } + "required": [ + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "blob_url", + "commit_sha", + "commit_url" + ] + }, + { + "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The file path of the wiki page", + "examples": [ + "/example/Home.md" + ] }, - "required": [ - "operator", - "pattern" - ] - } - } - }, - { - "title": "workflows", - "description": "Require all changes made to a targeted branch to pass the specified workflows before they can be merged.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "workflows" - ] - }, - "parameters": { - "type": "object", - "properties": { - "do_not_enforce_on_create": { - "type": "boolean", - "description": "Allow repositories and branches to be created if a check would otherwise prohibit it." - }, - "workflows": { - "type": "array", - "description": "Workflows that must pass for this rule to pass.", - "items": { - "title": "WorkflowFileReference", - "description": "A workflow that must run for this rule to pass", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The path to the workflow file" - }, - "ref": { - "type": "string", - "description": "The ref (branch or tag) of the workflow file to use" - }, - "repository_id": { - "type": "integer", - "description": "The ID of the repository where the workflow is defined" - }, - "sha": { - "type": "string", - "description": "The commit SHA of the workflow file to use" - } - }, - "required": [ - "path", - "repository_id" - ] - } - } + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "required": [ - "workflows" - ] - } - } - }, - { - "title": "code_scanning", - "description": "Choose which tools must provide code scanning results before the reference is updated. When configured, code scanning must be enabled and have results for both the commit and the reference being updated.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "code_scanning" - ] + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" + }, + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." + }, + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." + }, + "blob_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "page_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki page", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + }, + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + }, + "commit_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki commit", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "code_scanning_tools": { - "type": "array", - "description": "Tools that must provide code scanning results for this rule to pass.", - "items": { - "title": "CodeScanningTool", - "description": "A tool that must provide code scanning results for this rule to pass.", - "type": "object", - "properties": { - "alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise alerts block a reference update. For more information on alert severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "errors", - "errors_and_warnings", - "all" - ] - }, - "security_alerts_threshold": { - "type": "string", - "description": "The severity level at which code scanning results that raise security alerts block a reference update. For more information on security severity levels, see \"[About code scanning alerts](https://docs.github.com/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts#about-alert-severity-and-security-severity-levels).\"", - "enum": [ - "none", - "critical", - "high_or_higher", - "medium_or_higher", - "all" - ] - }, - "tool": { - "type": "string", - "description": "The name of a code scanning tool" - } - }, - "required": [ - "alerts_threshold", - "security_alerts_threshold", - "tool" - ] - } - } + "required": [ + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "page_url", + "commit_sha", + "commit_url" + ] + }, + { + "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", + "type": "object", + "properties": { + "issue_title_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] }, - "required": [ - "code_scanning_tools" - ] - } - } - }, - { - "title": "copilot_code_review", - "description": "Request Copilot code review for new pull requests automatically if the author has access to Copilot code review and their premium requests quota has not reached the limit.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "copilot_code_review" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "review_draft_pull_requests": { - "type": "boolean", - "description": "Copilot automatically reviews draft pull requests before they are marked as ready for review." - }, - "review_on_push": { - "type": "boolean", - "description": "Copilot automatically reviews each new push to the pull request." - } + "required": [ + "issue_title_url" + ] + }, + { + "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", + "type": "object", + "properties": { + "issue_body_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" + ] } - } - } - }, - { - "title": "license_compliance_scanning", - "description": "Enforce any added or changed dependencies to comply with the organization's license policy.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "license_compliance_scanning" - ] - } - } - }, - { - "title": "file_path_restriction", - "description": "Prevent commits that include changes in specified file and folder paths from being pushed to the commit graph. This includes absolute paths that contain file names.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_path_restriction" - ] }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_paths": { - "type": "array", - "description": "The file paths that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } + "required": [ + "issue_body_url" + ] + }, + { + "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", + "type": "object", + "properties": { + "issue_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + ] }, - "required": [ - "restricted_file_paths" - ] - } - } - }, - { - "title": "max_file_path_length", - "description": "Prevent commits that include file paths that exceed the specified character limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_path_length" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "max_file_path_length": { - "type": "integer", - "description": "The maximum amount of characters allowed in file paths.", - "minimum": 1, - "maximum": 32767 - } + "required": [ + "issue_comment_url" + ] + }, + { + "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", + "type": "object", + "properties": { + "discussion_title_url": { + "type": "string", + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082" + ] + } + }, + "required": [ + "discussion_title_url" + ] + }, + { + "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", + "type": "object", + "properties": { + "discussion_body_url": { + "type": "string", + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussion-4566270" + ] + } + }, + "required": [ + "discussion_body_url" + ] + }, + { + "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", + "type": "object", + "properties": { + "discussion_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the discussion comment where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + ] + } + }, + "required": [ + "discussion_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", + "type": "object", + "properties": { + "pull_request_title_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + ] }, - "required": [ - "max_file_path_length" - ] - } - } - }, - { - "title": "file_extension_restriction", - "description": "Prevent commits that include files with specified file extensions from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "file_extension_restriction" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "restricted_file_extensions": { - "type": "array", - "description": "The file extensions that are restricted from being pushed to the commit graph.", - "items": { - "type": "string" - } - } + "required": [ + "pull_request_title_url" + ] + }, + { + "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", + "type": "object", + "properties": { + "pull_request_body_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + ] }, - "required": [ - "restricted_file_extensions" - ] - } - } - }, - { - "title": "max_file_size", - "description": "Prevent commits with individual files that exceed the specified limit from being pushed to the commit graph.", - "type": "object", - "required": [ - "type" - ], - "properties": { - "type": { - "type": "string", - "enum": [ - "max_file_size" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] + } }, - "parameters": { - "type": "object", - "properties": { - "max_file_size": { - "type": "integer", - "description": "The maximum file size allowed in megabytes. This limit does not apply to Git Large File Storage (Git LFS).", - "minimum": 1, - "maximum": 100 - } + "required": [ + "pull_request_body_url" + ] + }, + { + "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", + "type": "object", + "properties": { + "pull_request_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + ] }, - "required": [ - "max_file_size" - ] - } - } - } - ] - } - }, - "created_at": { - "type": "string", - "format": "date-time" - }, - "updated_at": { - "type": "string", - "format": "date-time" - } - } - }, - "examples": { - "default": { - "value": { - "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" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" + ] + } }, - { - "type": [ - "integer", - "null" - ] + "required": [ + "pull_request_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", + "type": "object", + "properties": { + "pull_request_review_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" + ] + } }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" + "required": [ + "pull_request_review_url" + ] + }, + { + "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", + "type": "object", + "properties": { + "pull_request_review_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" + ] } - } - ] - } + }, + "required": [ + "pull_request_review_comment_url" + ] + } + ] } - } - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - } - }, - "delete": { - "summary": "Delete a repository ruleset", - "description": "Delete a ruleset for a repository.", - "tags": [ - "repos" - ], - "operationId": "repos/delete-repo-ruleset", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#delete-a-repository-ruleset" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ruleset_id", - "description": "The ID of the ruleset.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "204": { - "description": "Response" - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" + ] }, - "url": { - "type": "string" + "has_more_locations": { + "type": "boolean", + "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." }, - "status": { - "type": "string" - } - } - } - } - } - } - } - } - }, - "/repos/{owner}/{repo}/rulesets/{ruleset_id}/history": { - "get": { - "summary": "Get repository ruleset history", - "description": "Get the history of a repository ruleset.", - "tags": [ - "repos" - ], - "operationId": "repos/get-repo-ruleset-history", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#get-repository-ruleset-history" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "ruleset_id", - "description": "The ID of the ruleset.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Ruleset version", - "type": "object", - "description": "The historical version of a ruleset", - "required": [ - "version_id", - "actor", - "updated_at" - ], - "properties": { - "version_id": { - "type": "integer", - "description": "The ID of the previous version of the ruleset" - }, - "actor": { - "type": "object", - "description": "The actor who updated the ruleset", - "properties": { - "id": { - "type": "integer" - }, - "type": { - "type": "string" - } - } - }, - "updated_at": { - "type": "string", - "format": "date-time" - } - } - } - }, - "examples": { - "default": { - "value": [ - { - "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" + "assigned_to": { + "anyOf": [ + { + "type": "null" }, - "updated_at": "2024-08-23T16:29:47Z" - } - ] - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] }, - "url": { - "type": "string" + "closure_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment from the closure request author." }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" - } - } - }, - "/repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id}": { - "get": { - "summary": "Get repository ruleset version", - "description": "Get a version of a repository ruleset.", - "tags": [ - "repos" - ], - "operationId": "repos/get-repo-ruleset-version", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/repos/rules#get-repository-ruleset-version" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ruleset_id", - "description": "The ID of the ruleset.", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - }, - { - "name": "version_id", - "description": "The ID of the version", - "in": "path", - "required": true, - "schema": { - "type": "integer" - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "allOf": [ - { - "title": "Ruleset version", - "type": "object", - "description": "The historical version of a ruleset", - "required": [ - "version_id", - "actor", - "updated_at" + "closure_request_reviewer_comment": { + "type": [ + "string", + "null" ], - "properties": { - "version_id": { - "type": "integer", - "description": "The ID of the previous version of the ruleset" + "description": "An optional comment from the closure request reviewer." + }, + "closure_request_reviewer": { + "anyOf": [ + { + "type": "null" }, - "actor": { + { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", - "description": "The actor who updated the ruleset", "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, "id": { - "type": "integer" + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] }, "type": { - "type": "string" + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } - } - }, - "updated_at": { - "type": "string", - "format": "date-time" + }, + "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" + ] } - } + ] }, - { - "type": "object", - "required": [ - "state" - ], - "properties": { - "state": { - "type": "object", - "description": "The state of the ruleset version" - } + "metadata": { + "type": "array", + "description": "A list of metadata key/value pairs associated with the secret scanning alert.", + "readOnly": true, + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The metadata key." + }, + "value": { + "type": "string", + "description": "The metadata value." + } + }, + "required": [ + "key", + "value" + ] } } - ] + } }, "examples": { "default": { "value": { - "version_id": 3, - "actor": { - "id": 1, - "type": "User" - }, - "updated_at": "2024-10-23T16:29:47Z", - "state": { - "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" - } - } - ] - } + "number": 42, + "created_at": "2020-11-06T18:18:30Z", + "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42", + "html_url": "https://github.com/owner/private-repo/security/secret-scanning/42", + "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42/locations", + "state": "open", + "resolution": null, + "resolved_at": null, + "resolved_by": null, + "secret_type": "mailchimp_api_key", + "secret_type_display_name": "Mailchimp API Key", + "secret": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-us2", + "push_protection_bypassed_by": null, + "push_protection_bypassed": false, + "push_protection_bypassed_at": null, + "push_protection_bypass_request_reviewer": null, + "push_protection_bypass_request_reviewer_comment": null, + "push_protection_bypass_request_comment": null, + "push_protection_bypass_request_html_url": null, + "resolution_comment": null, + "validity": "unknown", + "publicly_leaked": false, + "multi_repo": false, + "metadata": [ + { + "key": "owner_email", + "value": "owner@example.com" + } + ] } } } } } }, + "304": { + "description": "Not modified" + }, "404": { - "description": "Resource not found", + "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" + }, + "503": { + "description": "Service unavailable", "content": { "application/json": { "schema": { - "title": "Basic Error", - "description": "Basic Error", "type": "object", "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { + "code": { "type": "string" }, - "status": { - "type": "string" - } - } - } - } - } - }, - "500": { - "description": "Internal Error", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { "message": { "type": "string" }, "documentation_url": { "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" } } } @@ -668600,22 +680160,20 @@ "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "repos", - "subcategory": "rules" + "category": "secret-scanning", + "subcategory": "secret-scanning" } - } - }, - "/repos/{owner}/{repo}/secret-scanning/alerts": { - "get": { - "summary": "List secret scanning alerts for a repository", - "description": "Lists secret scanning alerts for an eligible repository, from newest to oldest.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + }, + "patch": { + "summary": "Update a secret scanning alert", + "description": "Updates the status of a secret scanning alert in an eligible repository.\n\nYou can also use this endpoint to assign or unassign an alert to a user who has write access to the repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "operationId": "secret-scanning/update-alert", "tags": [ "secret-scanning" ], - "operationId": "secret-scanning/list-alerts-for-repo", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#list-secret-scanning-alerts-for-a-repository" + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#update-a-secret-scanning-alert" }, "parameters": [ { @@ -668637,1781 +680195,2226 @@ } }, { - "name": "state", - "in": "query", - "description": "Set to `open` or `resolved` to only list secret scanning alerts in a specific state.", - "required": false, - "schema": { - "type": "string", - "enum": [ - "open", - "resolved" - ] - } - }, - { - "name": "secret_type", - "in": "query", - "description": "A comma-separated list of secret types to return. All default secret patterns are returned. To return generic patterns, pass the token name(s) in the parameter. See \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets)\" for a complete list of secret types.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "exclude_secret_types", - "in": "query", - "description": "A comma-separated list of secret types to exclude from the results. All default secret patterns are returned except those matching the specified types. Cannot be combined with the `secret_type` parameter. See \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets)\" for a complete list of secret types.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "exclude_providers", - "in": "query", - "description": "A comma-separated list of provider slugs to exclude from the results.\nProvider slugs use lowercase with underscores (e.g., `github_secret_scanning`, `clojars`).\nYou can find the provider slug in the `provider_slug` field of each alert.\nCannot be combined with the `providers` parameter.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "providers", - "in": "query", - "description": "A comma-separated list of provider slugs to filter by.\nProvider slugs use lowercase with underscores (e.g., `github_secret_scanning`, `clojars`).\nYou can find the provider slug in the `provider_slug` field of each alert.\nCannot be combined with the `exclude_providers` parameter.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "resolution", - "in": "query", - "description": "A comma-separated list of resolutions. Only secret scanning alerts with one of these resolutions are listed. Valid resolutions are `false_positive`, `wont_fix`, `revoked`, `pattern_edited`, `pattern_deleted` or `used_in_tests`.", - "required": false, + "name": "alert_number", + "in": "path", + "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", + "required": true, "schema": { - "type": "string" + "type": "integer", + "description": "The security alert number.", + "readOnly": true } - }, - { - "name": "assignee", - "in": "query", - "description": "Filters alerts by assignee. Use `*` to get all assigned alerts, `none` to get all unassigned alerts, or a GitHub username to get alerts assigned to a specific user.", - "required": false, - "schema": { - "type": "string" - }, - "examples": { - "assigned-to-user": { - "value": "octocat", - "summary": "Filter for alerts assigned to the user \"octocat\"" - }, - "all-assigned": { - "value": "*", - "summary": "Filter for all assigned alerts" + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "state": { + "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", + "type": "string", + "enum": [ + "open", + "resolved" + ] + }, + "resolution": { + "type": [ + "string", + "null" + ], + "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", + "enum": [ + "false_positive", + "wont_fix", + "revoked", + "used_in_tests", + null + ] + }, + "resolution_comment": { + "description": "An optional comment when closing or reopening an alert. Cannot be updated or deleted.", + "type": [ + "string", + "null" + ] + }, + "assignee": { + "description": "The username of the user to assign to the alert. Set to `null` to unassign the alert.", + "type": [ + "string", + "null" + ] + }, + "validity": { + "type": [ + "string", + "null" + ], + "enum": [ + "active", + "inactive", + null + ], + "description": "Sets the validity of the secret scanning alert. Can be `active`, `inactive`, or `null` to clear the override." + } + }, + "anyOf": [ + { + "required": [ + "state" + ] + }, + { + "required": [ + "assignee" + ] + }, + { + "required": [ + "validity" + ] + } + ] }, - "all-unassigned": { - "value": "none", - "summary": "Filter for all unassigned alerts" + "examples": { + "default": { + "value": { + "state": "resolved", + "resolution": "false_positive" + } + }, + "assign": { + "summary": "Assign alert to a user", + "value": { + "assignee": "octocat" + } + }, + "unassign": { + "summary": "Unassign alert", + "value": { + "assignee": null + } + } } } - }, - { - "name": "sort", - "description": "The property to sort the results by. `created` means when the alert was created. `updated` means when the alert was updated or resolved.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "created", - "updated" - ], - "default": "created" - } - }, - { - "name": "direction", - "description": "The direction to sort the results by.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "asc", - "desc" - ], - "default": "desc" - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - }, - { - "name": "before", - "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for events before this cursor. To receive an initial cursor on your first request, include an empty \"before\" query string.", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "after", - "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for events after this cursor. To receive an initial cursor on your first request, include an empty \"after\" query string.", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "validity", - "in": "query", - "description": "A comma-separated list of validities that, when present, will return alerts that match the validities in this list. Valid options are `active`, `inactive`, and `unknown`.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "is_publicly_leaked", - "in": "query", - "description": "A boolean value representing whether or not to filter alerts by the publicly-leaked tag being present.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "is_multi_repo", - "in": "query", - "description": "A boolean value representing whether or not to filter alerts by the multi-repo tag being present.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "hide_secret", - "in": "query", - "description": "A boolean value representing whether or not to hide literal secrets in the results.", - "required": false, - "schema": { - "type": "boolean", - "default": false - } - }, - { - "name": "is_bypassed", - "in": "query", - "description": "A boolean value (`true` or `false`) indicating whether to filter alerts by their push protection bypass status. When set to `true`, only alerts that were created because a push protection rule was bypassed will be returned. When set to `false`, only alerts that were not caused by a push protection bypass will be returned.", - "required": false, - "schema": { - "type": "boolean" - } - }, - { - "name": "included_metadata", - "in": "query", - "description": "A comma-separated list of metadata fields to filter alerts by. Only alerts that have all of the\nspecified metadata fields attached will be returned. Possible values are: `owner-email`, `owner-id`,\n`owner-name`, `secret-id`, `secret-name`, `secret-issued-date`, `secret-expiration-date`, `organization-name`,\n`organization-id`, `last-used-date`, and `has-organization-access`.", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "owner_email_hash", - "in": "query", - "description": "Filters alerts to only those whose attached `owner_email` metadata field matches the\nprovided value. The value must be the lowercase hex-encoded SHA-256 hash of the email\naddress to match (for example, the SHA-256 of `user@example.com`). Only alerts that\nhave an `owner_email` metadata value whose SHA-256 hash equals this parameter are\nreturned.", - "required": false, - "schema": { - "type": "string" - } } - ], + }, "responses": { "200": { "description": "Response", "content": { "application/json": { "schema": { - "type": "array", - "items": { - "type": "object", - "properties": { - "number": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - }, - "created_at": { - "type": "string", - "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "updated_at": { - "anyOf": [ - { - "type": "null" - }, - { - "type": "string", - "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - } - ] - }, - "url": { - "type": "string", - "description": "The REST API URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "html_url": { - "type": "string", - "description": "The GitHub URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "locations_url": { - "type": "string", - "format": "uri", - "description": "The REST API URL of the code locations for this alert." - }, - "state": { - "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", - "type": "string", - "enum": [ - "open", - "resolved" - ] - }, - "resolution": { - "type": [ - "string", - "null" - ], - "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", - "enum": [ - "false_positive", - "wont_fix", - "revoked", - "used_in_tests", - null - ] - }, - "resolved_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "resolved_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "type": "object", + "properties": { + "number": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + }, + "created_at": { + "type": "string", + "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "updated_at": { + "anyOf": [ + { + "type": "null" + }, + { + "type": "string", + "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + } + ] + }, + "url": { + "type": "string", + "description": "The REST API URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "html_url": { + "type": "string", + "description": "The GitHub URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "locations_url": { + "type": "string", + "format": "uri", + "description": "The REST API URL of the code locations for this alert." + }, + "state": { + "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", + "type": "string", + "enum": [ + "open", + "resolved" + ] + }, + "resolution": { + "type": [ + "string", + "null" + ], + "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", + "enum": [ + "false_positive", + "wont_fix", + "revoked", + "used_in_tests", + null + ] + }, + "resolved_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "resolved_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] }, - "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" - ] - } - ] - }, - "resolution_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment to resolve an alert." - }, - "secret_type": { - "type": "string", - "description": "The type of secret that secret scanning detected." - }, - "secret_type_display_name": { - "type": "string", - "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" - }, - "provider": { - "type": [ - "string", - "null" - ], - "description": "The provider of the secret that was detected." - }, - "provider_slug": { - "type": [ - "string", - "null" - ], - "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." - }, - "secret": { - "type": "string", - "description": "The secret that was detected." - }, - "push_protection_bypassed": { - "type": [ - "boolean", - "null" - ], - "description": "Whether push protection was bypassed for the detected secret." - }, - "push_protection_bypassed_by": { - "anyOf": [ - { - "type": "null" + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "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" + ] + } + ] + }, + "resolution_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment to resolve an alert." + }, + "secret_type": { + "type": "string", + "description": "The type of secret that secret scanning detected." + }, + "secret_type_display_name": { + "type": "string", + "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" + }, + "provider": { + "type": [ + "string", + "null" + ], + "description": "The provider of the secret that was detected." + }, + "provider_slug": { + "type": [ + "string", + "null" + ], + "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." + }, + "secret": { + "type": "string", + "description": "The secret that was detected." + }, + "push_protection_bypassed": { + "type": [ + "boolean", + "null" + ], + "description": "Whether push protection was bypassed for the detected secret." + }, + "push_protection_bypassed_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] }, - "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" - ] - } - ] - }, - "push_protection_bypassed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "push_protection_bypass_request_reviewer": { - "anyOf": [ - { - "type": "null" + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "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" + ] + } + ] + }, + "push_protection_bypassed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "push_protection_bypass_request_reviewer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] }, - "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" - ] - } - ] - }, - "push_protection_bypass_request_reviewer_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment when reviewing a push protection bypass." - }, - "push_protection_bypass_request_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment when requesting a push protection bypass." - }, - "push_protection_bypass_request_html_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "description": "The URL to a push protection bypass request." - }, - "validity": { - "type": "string", - "description": "The token status as of the latest validity check.", - "enum": [ - "active", - "inactive", - "unknown" - ] - }, - "publicly_leaked": { - "type": [ - "boolean", - "null" - ], - "description": "Whether the detected secret was publicly leaked." - }, - "multi_repo": { - "type": [ - "boolean", - "null" - ], - "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." - }, - "is_base64_encoded": { - "type": [ - "boolean", - "null" - ], - "description": "A boolean value representing whether or not alert is base64 encoded" - }, - "first_location_detected": { - "anyOf": [ - { - "type": "null" + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - { - "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", - "oneOf": [ - { - "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The file path in the repository", - "examples": [ - "/example/secrets.txt" - ] - }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "blob_url": { - "type": "string", - "description": "The API URL to get the associated blob resource" - }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "commit_url": { - "type": "string", - "description": "The API URL to get the associated commit resource" - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL to get the associated commit resource.", - "examples": [ - "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" - ] - } + "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" + ] + } + ] + }, + "push_protection_bypass_request_reviewer_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment when reviewing a push protection bypass." + }, + "push_protection_bypass_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment when requesting a push protection bypass." + }, + "push_protection_bypass_request_html_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "description": "The URL to a push protection bypass request." + }, + "validity": { + "type": "string", + "description": "The token status as of the latest validity check.", + "enum": [ + "active", + "inactive", + "unknown" + ] + }, + "publicly_leaked": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was publicly leaked." + }, + "multi_repo": { + "type": [ + "boolean", + "null" + ], + "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." + }, + "is_base64_encoded": { + "type": [ + "boolean", + "null" + ], + "description": "A boolean value representing whether or not alert is base64 encoded" + }, + "first_location_detected": { + "anyOf": [ + { + "type": "null" + }, + { + "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", + "oneOf": [ + { + "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The file path in the repository", + "examples": [ + "/example/secrets.txt" + ] }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "blob_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The file path of the wiki page", - "examples": [ - "/example/Home.md" - ] - }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "page_url": { - "type": "string", - "description": "The GitHub URL to get the associated wiki page", - "examples": [ - "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", - "examples": [ - "302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - }, - "commit_url": { - "type": "string", - "description": "The GitHub URL to get the associated wiki commit", - "examples": [ - "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - } + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "page_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", - "type": "object", - "properties": { - "issue_title_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" }, - "required": [ - "issue_title_url" - ] - }, - { - "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", - "type": "object", - "properties": { - "issue_body_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" }, - "required": [ - "issue_body_url" - ] + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" + }, + "blob_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "blob_url": { + "type": "string", + "description": "The API URL to get the associated blob resource" + }, + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "commit_url": { + "type": "string", + "description": "The API URL to get the associated commit resource" + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL to get the associated commit resource.", + "examples": [ + "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" + ] + } }, - { - "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", - "type": "object", - "properties": { - "issue_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" - ] - } + "required": [ + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "blob_url", + "commit_sha", + "commit_url" + ] + }, + { + "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The file path of the wiki page", + "examples": [ + "/example/Home.md" + ] }, - "required": [ - "issue_comment_url" - ] + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" + }, + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" + }, + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." + }, + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." + }, + "blob_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated blob", + "examples": [ + "af5626b4a114abcb82d63db7c8082c3c4756e51b" + ] + }, + "page_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki page", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + }, + "commit_sha": { + "type": "string", + "description": "SHA-1 hash ID of the associated commit", + "examples": [ + "302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + }, + "commit_url": { + "type": "string", + "description": "The GitHub URL to get the associated wiki commit", + "examples": [ + "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + ] + } }, - { - "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", - "type": "object", - "properties": { - "discussion_title_url": { - "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082" - ] - } + "required": [ + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "page_url", + "commit_sha", + "commit_url" + ] + }, + { + "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", + "type": "object", + "properties": { + "issue_title_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] }, - "required": [ - "discussion_title_url" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" + ] + } }, - { - "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", - "type": "object", - "properties": { - "discussion_body_url": { - "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082#discussion-4566270" - ] - } + "required": [ + "issue_title_url" + ] + }, + { + "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", + "type": "object", + "properties": { + "issue_body_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] }, - "required": [ - "discussion_body_url" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1" + ] + } }, - { - "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", - "type": "object", - "properties": { - "discussion_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the discussion comment where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082#discussioncomment-4158232" - ] - } + "required": [ + "issue_body_url" + ] + }, + { + "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", + "type": "object", + "properties": { + "issue_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + ] }, - "required": [ - "discussion_comment_url" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" + ] + } }, - { - "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", - "type": "object", - "properties": { - "pull_request_title_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" - ] - } + "required": [ + "issue_comment_url" + ] + }, + { + "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", + "type": "object", + "properties": { + "discussion_title_url": { + "type": "string", + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082" + ] + } + }, + "required": [ + "discussion_title_url" + ] + }, + { + "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", + "type": "object", + "properties": { + "discussion_body_url": { + "type": "string", + "format": "uri", + "description": "The URL to the discussion where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussion-4566270" + ] + } + }, + "required": [ + "discussion_body_url" + ] + }, + { + "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", + "type": "object", + "properties": { + "discussion_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the discussion comment where the secret was detected.", + "examples": [ + "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + ] + } + }, + "required": [ + "discussion_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", + "type": "object", + "properties": { + "pull_request_title_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + ] }, - "required": [ - "pull_request_title_url" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] + } }, - { - "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", - "type": "object", - "properties": { - "pull_request_body_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" - ] - } + "required": [ + "pull_request_title_url" + ] + }, + { + "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", + "type": "object", + "properties": { + "pull_request_body_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + ] }, - "required": [ - "pull_request_body_url" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846" + ] + } }, - { - "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", - "type": "object", - "properties": { - "pull_request_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" - ] - } + "required": [ + "pull_request_body_url" + ] + }, + { + "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", + "type": "object", + "properties": { + "pull_request_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + ] }, - "required": [ - "pull_request_comment_url" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" + ] + } }, - { - "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", - "type": "object", - "properties": { - "pull_request_review_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" - ] - } + "required": [ + "pull_request_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", + "type": "object", + "properties": { + "pull_request_review_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + ] }, - "required": [ - "pull_request_review_url" - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" + ] + } }, - { - "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", - "type": "object", - "properties": { - "pull_request_review_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" - ] - } + "required": [ + "pull_request_review_url" + ] + }, + { + "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", + "type": "object", + "properties": { + "pull_request_review_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review comment where the secret was detected.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + ] }, - "required": [ - "pull_request_review_comment_url" - ] - } - ] + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review comment where the secret was detected.", + "examples": [ + "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" + ] + } + }, + "required": [ + "pull_request_review_comment_url" + ] + } + ] + } + ] + }, + "has_more_locations": { + "type": "boolean", + "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." + }, + "assigned_to": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "closure_request_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment from the closure request author." + }, + "closure_request_reviewer_comment": { + "type": [ + "string", + "null" + ], + "description": "An optional comment from the closure request reviewer." + }, + "closure_request_reviewer": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "metadata": { + "type": "array", + "description": "A list of metadata key/value pairs associated with the secret scanning alert.", + "readOnly": true, + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The metadata key." + }, + "value": { + "type": "string", + "description": "The metadata value." } + }, + "required": [ + "key", + "value" ] + } + } + } + }, + "examples": { + "default": { + "value": { + "number": 42, + "created_at": "2020-11-06T18:18:30Z", + "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42", + "html_url": "https://github.com/owner/private-repo/security/secret-scanning/42", + "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42/locations", + "state": "resolved", + "resolution": "used_in_tests", + "resolved_at": "2020-11-16T22:42:07Z", + "resolved_by": { + "login": "monalisa", + "id": 2, + "node_id": "MDQ6VXNlcjI=", + "avatar_url": "https://alambic.github.com/avatars/u/2?", + "gravatar_id": "", + "url": "https://api.github.com/users/monalisa", + "html_url": "https://github.com/monalisa", + "followers_url": "https://api.github.com/users/monalisa/followers", + "following_url": "https://api.github.com/users/monalisa/following{/other_user}", + "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", + "organizations_url": "https://api.github.com/users/monalisa/orgs", + "repos_url": "https://api.github.com/users/monalisa/repos", + "events_url": "https://api.github.com/users/monalisa/events{/privacy}", + "received_events_url": "https://api.github.com/users/monalisa/received_events", + "type": "User", + "site_admin": true }, - "has_more_locations": { - "type": "boolean", - "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." - }, + "secret_type": "mailchimp_api_key", + "secret_type_display_name": "Mailchimp API Key", + "secret": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-us2", + "push_protection_bypassed": false, + "push_protection_bypassed_by": null, + "push_protection_bypassed_at": null, + "push_protection_bypass_request_reviewer": null, + "push_protection_bypass_request_reviewer_comment": null, + "push_protection_bypass_request_comment": null, + "push_protection_bypass_request_html_url": null, + "resolution_comment": "Example comment", + "validity": "unknown", + "publicly_leaked": false, + "multi_repo": false, + "metadata": [ + { + "key": "owner_email", + "value": "owner@example.com" + } + ], "assigned_to": { - "anyOf": [ - { - "type": "null" - }, + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://alambic.github.com/avatars/u/1?", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + } + } + } + } + } + } + }, + "400": { + "description": "Bad request, resolution comment is invalid or the resolution was not changed." + }, + "403": { + "description": "Delegated alert dismissal is enabled and the authenticated user is not a valid reviewer." + }, + "404": { + "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" + }, + "422": { + "description": "State does not match the resolution or resolution comment, assignee does not have write access to the repository, or the requested validity change could not be applied to this alert" + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "enabledForGitHubApps": true, + "githubCloudOnly": false, + "category": "secret-scanning", + "subcategory": "secret-scanning" + } + } + }, + "/repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations": { + "get": { + "summary": "List locations for a secret scanning alert", + "description": "Lists all locations for a given secret scanning alert for an eligible repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "tags": [ + "secret-scanning" + ], + "operationId": "secret-scanning/list-locations-for-alert", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#list-locations-for-a-secret-scanning-alert" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alert_number", + "in": "path", + "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", + "required": true, + "schema": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "description": "List of locations where the secret was detected", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "commit", + "wiki_commit", + "issue_title", + "issue_body", + "issue_comment", + "discussion_title", + "discussion_body", + "discussion_comment", + "pull_request_title", + "pull_request_body", + "pull_request_comment", + "pull_request_review", + "pull_request_review_comment" + ], + "description": "The location type. Because secrets may be found in different types of resources (ie. code, comments, issues, pull requests, discussions), this field identifies the type of resource where the secret was found.", + "examples": [ + "commit" + ] + }, + "details": { + "oneOf": [ { - "title": "Simple User", - "description": "A GitHub user.", + "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { + "path": { "type": "string", + "description": "The file path in the repository", "examples": [ - "octocat" + "/example/secrets.txt" ] }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" }, - "url": { + "blob_sha": { "type": "string", - "format": "uri", + "description": "SHA-1 hash ID of the associated blob", "examples": [ - "https://api.github.com/users/octocat" + "af5626b4a114abcb82d63db7c8082c3c4756e51b" ] }, - "html_url": { + "blob_url": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] + "description": "The API URL to get the associated blob resource" }, - "followers_url": { + "commit_sha": { "type": "string", - "format": "uri", + "description": "SHA-1 hash ID of the associated commit", "examples": [ - "https://api.github.com/users/octocat/followers" + "af5626b4a114abcb82d63db7c8082c3c4756e51b" ] }, - "following_url": { + "commit_url": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] + "description": "The API URL to get the associated commit resource" }, - "gists_url": { + "html_url": { "type": "string", + "format": "uri", + "description": "The GitHub URL to get the associated commit resource.", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" ] - }, - "starred_url": { + } + }, + "required": [ + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "blob_url", + "commit_sha", + "commit_url" + ] + }, + { + "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", + "type": "object", + "properties": { + "path": { "type": "string", + "description": "The file path of the wiki page", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "/example/Home.md" ] }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] + "start_line": { + "type": "number", + "description": "Line number at which the secret starts in the file" }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + "end_line": { + "type": "number", + "description": "Line number at which the secret ends in the file" }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "start_column": { + "type": "number", + "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "end_column": { + "type": "number", + "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." }, - "received_events_url": { + "blob_sha": { "type": "string", - "format": "uri", + "description": "SHA-1 hash ID of the associated blob", "examples": [ - "https://api.github.com/users/octocat/received_events" + "af5626b4a114abcb82d63db7c8082c3c4756e51b" ] }, - "type": { + "page_url": { "type": "string", + "description": "The GitHub URL to get the associated wiki page", "examples": [ - "User" + "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { + "commit_sha": { "type": "string", + "description": "SHA-1 hash ID of the associated commit", "examples": [ - "\"2020-07-09T00:17:55Z\"" + "302c0b7e200761c9dd9b57e57db540ee0b4293a5" ] }, - "user_view_type": { + "commit_url": { "type": "string", + "description": "The GitHub URL to get the associated wiki commit", "examples": [ - "public" + "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" ] } }, "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" + "path", + "start_line", + "end_line", + "start_column", + "end_column", + "blob_sha", + "page_url", + "commit_sha", + "commit_url" ] - } - ] - }, - "closure_request_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment from the closure request author." - }, - "closure_request_reviewer_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment from the closure request reviewer." - }, - "closure_request_reviewer": { - "anyOf": [ - { - "type": "null" }, { - "title": "Simple User", - "description": "A GitHub user.", + "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { + "issue_title_url": { "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", "examples": [ - "octocat" + "https://api.github.com/repos/octocat/Hello-World/issues/1347" ] }, - "id": { - "type": "integer", - "format": "int64", + "html_url": { + "type": "string", + "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", "examples": [ - 1 + "https://github.com/octocat/Hello-World/issues/1" ] - }, - "node_id": { + } + }, + "required": [ + "issue_title_url" + ] + }, + { + "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", + "type": "object", + "properties": { + "issue_body_url": { "type": "string", + "format": "uri", + "description": "The API URL to get the issue where the secret was detected.", "examples": [ - "MDQ6VXNlcjE=" + "https://api.github.com/repos/octocat/Hello-World/issues/1347" ] }, - "avatar_url": { + "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL for the issue where the secret was detected.", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "https://github.com/octocat/Hello-World/issues/1" ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], + } + }, + "required": [ + "issue_body_url" + ] + }, + { + "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", + "type": "object", + "properties": { + "issue_comment_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get the issue comment where the secret was detected.", "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" ] }, - "url": { + "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL for the issue comment where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat" + "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" ] - }, - "html_url": { + } + }, + "required": [ + "issue_comment_url" + ] + }, + { + "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", + "type": "object", + "properties": { + "discussion_title_url": { "type": "string", "format": "uri", + "description": "The URL to the discussion where the secret was detected.", "examples": [ - "https://github.com/octocat" + "https://github.com/community/community/discussions/39082" ] - }, - "followers_url": { + } + }, + "required": [ + "discussion_title_url" + ] + }, + { + "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", + "type": "object", + "properties": { + "discussion_body_url": { "type": "string", "format": "uri", + "description": "The URL to the discussion where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/followers" + "https://github.com/community/community/discussions/39082#discussion-4566270" ] - }, - "following_url": { + } + }, + "required": [ + "discussion_body_url" + ] + }, + { + "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", + "type": "object", + "properties": { + "discussion_comment_url": { "type": "string", + "format": "uri", + "description": "The API URL to get the discussion comment where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "https://github.com/community/community/discussions/39082#discussioncomment-4158232" ] - }, - "gists_url": { + } + }, + "required": [ + "discussion_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", + "type": "object", + "properties": { + "pull_request_title_url": { "type": "string", + "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" ] }, - "starred_url": { + "html_url": { "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "https://github.com/octocat/Hello-World/pull/2846" ] - }, - "subscriptions_url": { + } + }, + "required": [ + "pull_request_title_url" + ] + }, + { + "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", + "type": "object", + "properties": { + "pull_request_body_url": { "type": "string", "format": "uri", + "description": "The API URL to get the pull request where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "https://api.github.com/repos/octocat/Hello-World/pulls/2846" ] }, - "organizations_url": { + "html_url": { "type": "string", "format": "uri", + "description": "The GitHub URL for the pull request where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/orgs" + "https://github.com/octocat/Hello-World/pull/2846" ] - }, - "repos_url": { + } + }, + "required": [ + "pull_request_body_url" + ] + }, + { + "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", + "type": "object", + "properties": { + "pull_request_comment_url": { "type": "string", "format": "uri", + "description": "The API URL to get the pull request comment where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/repos" + "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" ] }, - "events_url": { + "html_url": { "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request comment where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" ] - }, - "received_events_url": { + } + }, + "required": [ + "pull_request_comment_url" + ] + }, + { + "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", + "type": "object", + "properties": { + "pull_request_review_url": { "type": "string", "format": "uri", + "description": "The API URL to get the pull request review where the secret was detected.", "examples": [ - "https://api.github.com/users/octocat/received_events" + "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" ] }, - "type": { + "html_url": { "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review where the secret was detected.", "examples": [ - "User" + "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { + } + }, + "required": [ + "pull_request_review_url" + ] + }, + { + "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", + "type": "object", + "properties": { + "pull_request_review_comment_url": { "type": "string", + "format": "uri", + "description": "The API URL to get the pull request review comment where the secret was detected.", "examples": [ - "\"2020-07-09T00:17:55Z\"" + "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" ] }, - "user_view_type": { + "html_url": { "type": "string", + "format": "uri", + "description": "The GitHub URL for the pull request review comment where the secret was detected.", "examples": [ - "public" + "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" ] } - }, - "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" - ] - } - ] - } - } - } - }, - "examples": { - "default": { - "value": [ - { - "number": 2, - "created_at": "2020-11-06T18:48:51Z", - "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/2", - "html_url": "https://github.com/owner/private-repo/security/secret-scanning/2", - "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/2/locations", - "state": "resolved", - "resolution": "false_positive", - "resolved_at": "2020-11-07T02:47:13Z", - "resolved_by": { - "login": "monalisa", - "id": 2, - "node_id": "MDQ6VXNlcjI=", - "avatar_url": "https://alambic.github.com/avatars/u/2?", - "gravatar_id": "", - "url": "https://api.github.com/users/monalisa", - "html_url": "https://github.com/monalisa", - "followers_url": "https://api.github.com/users/monalisa/followers", - "following_url": "https://api.github.com/users/monalisa/following{/other_user}", - "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", - "organizations_url": "https://api.github.com/users/monalisa/orgs", - "repos_url": "https://api.github.com/users/monalisa/repos", - "events_url": "https://api.github.com/users/monalisa/events{/privacy}", - "received_events_url": "https://api.github.com/users/monalisa/received_events", - "type": "User", - "site_admin": true - }, - "secret_type": "adafruit_io_key", - "secret_type_display_name": "Adafruit IO Key", - "secret": "aio_XXXXXXXXXXXXXXXXXXXXXXXXXXXX", - "push_protection_bypassed_by": { - "login": "monalisa", - "id": 2, - "node_id": "MDQ6VXNlcjI=", - "avatar_url": "https://alambic.github.com/avatars/u/2?", - "gravatar_id": "", - "url": "https://api.github.com/users/monalisa", - "html_url": "https://github.com/monalisa", - "followers_url": "https://api.github.com/users/monalisa/followers", - "following_url": "https://api.github.com/users/monalisa/following{/other_user}", - "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", - "organizations_url": "https://api.github.com/users/monalisa/orgs", - "repos_url": "https://api.github.com/users/monalisa/repos", - "events_url": "https://api.github.com/users/monalisa/events{/privacy}", - "received_events_url": "https://api.github.com/users/monalisa/received_events", - "type": "User", - "site_admin": true - }, - "push_protection_bypassed": true, - "push_protection_bypassed_at": "2020-11-06T21:48:51Z", - "push_protection_bypass_request_reviewer": { - "login": "octocat", - "id": 3, - "node_id": "MDQ6VXNlcjI=", - "avatar_url": "https://alambic.github.com/avatars/u/3?", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": true - }, - "push_protection_bypass_request_reviewer_comment": "Example response", - "push_protection_bypass_request_comment": "Example comment", - "push_protection_bypass_request_html_url": "https://github.com/owner/repo/secret_scanning_exemptions/1", - "resolution_comment": "Example comment", - "validity": "inactive", - "publicly_leaked": false, - "multi_repo": false, - "is_base64_encoded": false, - "first_location_detected": { + }, + "required": [ + "pull_request_review_comment_url" + ] + } + ] + } + } + } + }, + "examples": { + "default": { + "value": [ + { + "type": "commit", + "details": { "path": "/example/secrets.txt", "start_line": 1, "end_line": 1, @@ -670421,37 +682424,104 @@ "blob_url": "https://api.github.com/repos/octocat/hello-world/git/blobs/af5626b4a114abcb82d63db7c8082c3c4756e51b", "commit_sha": "f14d7debf9775f957cf4f1e8176da0786431f72b", "commit_url": "https://api.github.com/repos/octocat/hello-world/git/commits/f14d7debf9775f957cf4f1e8176da0786431f72b" - }, - "has_more_locations": true, - "assigned_to": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + } + }, + { + "type": "wiki_commit", + "details": { + "path": "/example/Home.md", + "start_line": 1, + "end_line": 1, + "start_column": 1, + "end_column": 64, + "blob_sha": "af5626b4a114abcb82d63db7c8082c3c4756e51b", + "page_url": "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5", + "commit_sha": "302c0b7e200761c9dd9b57e57db540ee0b4293a5", + "commit_url": "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + } + }, + { + "type": "issue_title", + "details": { + "issue_title_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347" + } + }, + { + "type": "issue_body", + "details": { + "issue_body_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347" + } + }, + { + "type": "issue_comment", + "details": { + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + } + }, + { + "type": "discussion_title", + "details": { + "discussion_title_url": "https://github.com/community/community/discussions/39082" + } + }, + { + "type": "discussion_body", + "details": { + "discussion_body_url": "https://github.com/community/community/discussions/39082#discussion-4566270" + } + }, + { + "type": "discussion_comment", + "details": { + "discussion_comment_url": "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + } + }, + { + "type": "pull_request_title", + "details": { + "pull_request_title_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + } + }, + { + "type": "pull_request_body", + "details": { + "pull_request_body_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + } + }, + { + "type": "pull_request_comment", + "details": { + "pull_request_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments/1825855898" + } + }, + { + "type": "pull_request_review", + "details": { + "pull_request_review_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + } + }, + { + "type": "pull_request_review_comment", + "details": { + "pull_request_review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" } } ] } } } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } } }, "404": { - "description": "Repository is public or secret scanning is disabled for the repository" + "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" }, "503": { "description": "Service unavailable", @@ -670483,17 +682553,23 @@ } } }, - "/repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}": { + "/repos/{owner}/{repo}/secret-scanning/custom-patterns": { "get": { - "summary": "Get a secret scanning alert", - "description": "Gets a single secret scanning alert detected in an eligible repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "summary": "List repository custom patterns", + "description": "Lists secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", "tags": [ "secret-scanning" ], - "operationId": "secret-scanning/get-alert", + "operationId": "secret-scanning/list-repo-custom-patterns", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#get-a-secret-scanning-alert" + "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#list-repository-custom-patterns" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "custom-patterns" }, "parameters": [ { @@ -670515,24 +682591,76 @@ } }, { - "name": "alert_number", - "in": "path", - "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", - "required": true, + "name": "state", + "description": "Filter custom patterns by state. When absent, returns patterns in all states.", + "in": "query", + "required": false, "schema": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true + "type": "string", + "enum": [ + "published", + "unpublished" + ] } }, { - "name": "hide_secret", + "name": "push_protection", + "description": "Filter custom patterns by whether push protection is enabled. When absent, returns patterns regardless of push protection status.", "in": "query", - "description": "A boolean value representing whether or not to hide literal secrets in the results.", "required": false, "schema": { - "type": "boolean", - "default": false + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + }, + { + "name": "sort", + "description": "The property to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created", + "updated", + "name" + ], + "default": "created" + } + }, + { + "name": "direction", + "description": "The direction to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "desc" + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 } } ], @@ -670542,1540 +682670,1515 @@ "content": { "application/json": { "schema": { + "type": "array", + "items": { + "title": "Secret Scanning Custom Pattern", + "description": "A custom pattern for secret scanning.", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "The ID of the custom pattern." + }, + "name": { + "type": "string", + "description": "The name of the custom pattern." + }, + "pattern": { + "type": "string", + "description": "The regular expression of the custom pattern." + }, + "slug": { + "type": "string", + "description": "A URL-friendly identifier for the custom pattern, derived from its name." + }, + "state": { + "type": "string", + "description": "The state of the custom pattern.", + "enum": [ + "published", + "unpublished" + ] + }, + "push_protection_enabled": { + "type": "boolean", + "description": "Whether push protection is enabled for this custom pattern." + }, + "start_delimiter": { + "type": [ + "string", + "null" + ], + "description": "The start delimiter regex for the custom pattern." + }, + "end_delimiter": { + "type": [ + "string", + "null" + ], + "description": "The end delimiter regex for the custom pattern." + }, + "must_match": { + "type": [ + "array", + "null" + ], + "description": "List of regexes that the secret must match.", + "items": { + "type": "string" + } + }, + "must_not_match": { + "type": [ + "array", + "null" + ], + "description": "List of regexes that the secret must not match.", + "items": { + "type": "string" + } + }, + "custom_pattern_version": { + "type": [ + "string", + "null" + ], + "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + }, + "created_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was created in ISO 8601 format." + }, + "updated_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was last updated in ISO 8601 format." + } + }, + "required": [ + "id", + "name", + "pattern", + "slug", + "state", + "push_protection_enabled" + ] + } + }, + "examples": { + "default": { + "value": [ + { + "id": 1, + "name": "Example Custom Pattern", + "pattern": "[a-z]+_token_[0-9]+", + "slug": "example-custom-pattern", + "state": "published", + "push_protection_enabled": true, + "start_delimiter": null, + "end_delimiter": null, + "must_match": null, + "must_not_match": null, + "created_at": "2024-01-15T10:30:00Z", + "updated_at": "2024-01-15T10:30:00Z" + }, + { + "id": 2, + "name": "Another Custom Pattern", + "pattern": "prefix_[a-zA-Z0-9]{32}", + "slug": "another-custom-pattern", + "state": "published", + "push_protection_enabled": false, + "start_delimiter": "\\b", + "end_delimiter": "\\b", + "must_match": [ + "^prefix_prod" + ], + "must_not_match": [ + "test" + ], + "created_at": "2024-01-16T14:20:00Z", + "updated_at": "2024-01-17T09:15:00Z" + } + ] + } + } + } + }, + "headers": { + "Link": { + "example": "; rel=\"next\", ; rel=\"last\"", + "schema": { + "type": "string" + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", "type": "object", "properties": { - "number": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - }, - "created_at": { - "type": "string", - "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true + "message": { + "type": "string" }, - "updated_at": { - "anyOf": [ - { - "type": "null" - }, - { - "type": "string", - "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - } - ] + "documentation_url": { + "type": "string" }, "url": { - "type": "string", - "description": "The REST API URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "html_url": { - "type": "string", - "description": "The GitHub URL of the alert resource.", - "format": "uri", - "readOnly": true + "type": "string" }, - "locations_url": { - "type": "string", - "format": "uri", - "description": "The REST API URL of the code locations for this alert." + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "state": { - "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", - "type": "string", - "enum": [ - "open", - "resolved" - ] + "documentation_url": { + "type": "string" }, - "resolution": { - "type": [ - "string", - "null" - ], - "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", - "enum": [ - "false_positive", - "wont_fix", - "revoked", - "used_in_tests", - null - ] + "url": { + "type": "string" }, - "resolved_at": { - "type": [ - "string", - "null" + "status": { + "type": "string" + } + } + } + } + } + } + } + }, + "post": { + "summary": "Bulk create repository custom patterns", + "description": "Bulk creates secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "tags": [ + "secret-scanning" + ], + "operationId": "secret-scanning/bulk-create-repo-custom-patterns", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#bulk-create-repository-custom-patterns" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "custom-patterns" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "patterns" + ], + "properties": { + "patterns": { + "type": "array", + "description": "The list of custom patterns to create.", + "items": { + "title": "Secret Scanning Custom Pattern To Create", + "description": "A custom pattern to create in a bulk operation.", + "type": "object", + "required": [ + "name", + "pattern" ], - "format": "date-time", - "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "resolved_by": { - "anyOf": [ - { - "type": "null" + "properties": { + "name": { + "type": "string", + "description": "The name of the custom pattern." }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "pattern": { + "type": "string", + "description": "The regular expression of the custom pattern." + }, + "start_delimiter": { + "type": "string", + "description": "The start delimiter regex for the custom pattern.\nDefaults to `\\A|[^0-9A-Za-z]` when not specified.", + "default": "\\A|[^0-9A-Za-z]" + }, + "end_delimiter": { + "type": "string", + "description": "The end delimiter regex for the custom pattern.\nDefaults to `\\z|[^0-9A-Za-z]` when not specified.", + "default": "\\z|[^0-9A-Za-z]" + }, + "must_match": { + "type": "array", + "description": "List of regexes that the secret must match.", + "items": { + "type": "string" + } + }, + "must_not_match": { + "type": "array", + "description": "List of regexes that the secret must not match.", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "examples": { + "default": { + "value": { + "patterns": [ + { + "name": "Example Custom Pattern", + "pattern": "[a-z]+_token_[0-9]+" + }, + { + "name": "Another Custom Pattern", + "pattern": "prefix_[a-zA-Z0-9]{32}", + "start_delimiter": "\\b", + "end_delimiter": "\\b", + "must_match": [ + "^prefix_prod" + ], + "must_not_match": [ + "test" + ] + } + ] + } + } + } + } + } + }, + "responses": { + "201": { + "description": "All patterns created successfully.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "created_patterns": { + "type": "array", + "description": "The list of successfully created custom patterns.", + "items": { + "title": "Secret Scanning Custom Pattern", + "description": "A custom pattern for secret scanning.", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "The ID of the custom pattern." + }, + "name": { + "type": "string", + "description": "The name of the custom pattern." + }, + "pattern": { + "type": "string", + "description": "The regular expression of the custom pattern." + }, + "slug": { + "type": "string", + "description": "A URL-friendly identifier for the custom pattern, derived from its name." + }, + "state": { + "type": "string", + "description": "The state of the custom pattern.", + "enum": [ + "published", + "unpublished" + ] + }, + "push_protection_enabled": { + "type": "boolean", + "description": "Whether push protection is enabled for this custom pattern." + }, + "start_delimiter": { + "type": [ + "string", + "null" + ], + "description": "The start delimiter regex for the custom pattern." + }, + "end_delimiter": { + "type": [ + "string", + "null" + ], + "description": "The end delimiter regex for the custom pattern." + }, + "must_match": { + "type": [ + "array", + "null" + ], + "description": "List of regexes that the secret must match.", + "items": { + "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" - ] - } - ] - }, - "resolution_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment to resolve an alert." - }, - "secret_type": { - "type": "string", - "description": "The type of secret that secret scanning detected." - }, - "secret_type_display_name": { - "type": "string", - "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" - }, - "provider": { - "type": [ - "string", - "null" - ], - "description": "The provider of the secret that was detected." - }, - "provider_slug": { - "type": [ - "string", - "null" - ], - "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." - }, - "secret": { - "type": "string", - "description": "The secret that was detected." - }, - "push_protection_bypassed": { - "type": [ - "boolean", - "null" - ], - "description": "Whether push protection was bypassed for the detected secret." - }, - "push_protection_bypassed_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "must_not_match": { + "type": [ + "array", + "null" + ], + "description": "List of regexes that the secret must not match.", + "items": { + "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" - ] - } - ] - }, - "push_protection_bypassed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "push_protection_bypass_request_reviewer": { - "anyOf": [ + "custom_pattern_version": { + "type": [ + "string", + "null" + ], + "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + }, + "created_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was created in ISO 8601 format." + }, + "updated_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was last updated in ISO 8601 format." + } + }, + "required": [ + "id", + "name", + "pattern", + "slug", + "state", + "push_protection_enabled" + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "created_patterns": [ { - "type": "null" + "id": 1, + "name": "Example Custom Pattern", + "pattern": "[a-z]+_token_[0-9]+", + "slug": "example-custom-pattern", + "state": "unpublished", + "push_protection_enabled": false, + "start_delimiter": null, + "end_delimiter": null, + "must_match": null, + "must_not_match": null, + "created_at": "2024-01-15T10:30:00Z", + "updated_at": "2024-01-15T10:30:00Z" }, { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] + "id": 2, + "name": "Another Custom Pattern", + "pattern": "prefix_[a-zA-Z0-9]{32}", + "slug": "another-custom-pattern", + "state": "unpublished", + "push_protection_enabled": false, + "start_delimiter": "\\b", + "end_delimiter": "\\b", + "must_match": [ + "^prefix_prod" + ], + "must_not_match": [ + "test" + ], + "created_at": "2024-01-15T10:30:00Z", + "updated_at": "2024-01-15T10:30:00Z" } ] + } + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "push_protection_bypass_request_reviewer_comment": { + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { "type": [ "string", "null" - ], - "description": "An optional comment when reviewing a push protection bypass." + ] }, - "push_protection_bypass_request_comment": { + "documentation_url": { "type": [ "string", "null" - ], - "description": "An optional comment when requesting a push protection bypass." + ] }, - "push_protection_bypass_request_html_url": { + "detail": { "type": [ "string", "null" - ], - "format": "uri", - "description": "The URL to a push protection bypass request." - }, - "validity": { - "type": "string", - "description": "The token status as of the latest validity check.", - "enum": [ - "active", - "inactive", - "unknown" ] }, - "publicly_leaked": { - "type": [ - "boolean", - "null" - ], - "description": "Whether the detected secret was publicly leaked." + "status": { + "type": "integer" }, - "multi_repo": { + "scimType": { "type": [ - "boolean", + "string", "null" - ], - "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." + ] }, - "is_base64_encoded": { - "type": [ - "boolean", - "null" - ], - "description": "A boolean value representing whether or not alert is base64 encoded" + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "first_location_detected": { - "anyOf": [ - { - "type": "null" - }, - { - "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", - "oneOf": [ - { - "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The file path in the repository", - "examples": [ - "/example/secrets.txt" - ] - }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "blob_url": { - "type": "string", - "description": "The API URL to get the associated blob resource" - }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "commit_url": { - "type": "string", - "description": "The API URL to get the associated commit resource" - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL to get the associated commit resource.", - "examples": [ - "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" - ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "blob_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The file path of the wiki page", - "examples": [ - "/example/Home.md" - ] - }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "page_url": { - "type": "string", - "description": "The GitHub URL to get the associated wiki page", - "examples": [ - "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", - "examples": [ - "302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - }, - "commit_url": { - "type": "string", - "description": "The GitHub URL to get the associated wiki commit", - "examples": [ - "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "page_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", - "type": "object", - "properties": { - "issue_title_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } - }, - "required": [ - "issue_title_url" - ] - }, - { - "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", - "type": "object", - "properties": { - "issue_body_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } - }, - "required": [ - "issue_body_url" - ] - }, - { - "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", - "type": "object", - "properties": { - "issue_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" - ] - } - }, - "required": [ - "issue_comment_url" - ] - }, - { - "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", - "type": "object", - "properties": { - "discussion_title_url": { - "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082" - ] - } - }, - "required": [ - "discussion_title_url" - ] - }, - { - "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", - "type": "object", - "properties": { - "discussion_body_url": { - "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082#discussion-4566270" - ] - } - }, - "required": [ - "discussion_body_url" - ] - }, - { - "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", - "type": "object", - "properties": { - "discussion_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the discussion comment where the secret was detected.", - "examples": [ - "https://github.com/community/community/discussions/39082#discussioncomment-4158232" - ] - } - }, - "required": [ - "discussion_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", - "type": "object", - "properties": { - "pull_request_title_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" - ] - } - }, - "required": [ - "pull_request_title_url" - ] - }, - { - "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", - "type": "object", - "properties": { - "pull_request_body_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" - ] - } - }, - "required": [ - "pull_request_body_url" - ] - }, - { - "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", - "type": "object", - "properties": { - "pull_request_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" - ] - } - }, - "required": [ - "pull_request_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", - "type": "object", - "properties": { - "pull_request_review_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" - ] - } - }, - "required": [ - "pull_request_review_url" - ] - }, - { - "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed for one or more patterns.", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "A summary message describing the error." + }, + "validation_errors": { + "type": "object", + "description": "A map of validation errors keyed by the zero-based index of the pattern that failed.", + "additionalProperties": { + "type": "object", + "properties": { + "errors": { + "type": "array", + "description": "List of validation errors for this pattern.", + "items": { + "title": "Secret Scanning Custom Pattern Validation Error", + "description": "A validation error for a custom pattern in a batch operation.", "type": "object", "properties": { - "pull_request_review_comment_url": { + "code": { "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review comment where the secret was detected.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + "description": "A machine-readable code describing the error.", + "enum": [ + "invalid", + "unprocessable", + "start_delimiter", + "end_delimiter", + "name", + "must_match", + "must_not_match", + "custom_pattern_version_mismatch" ] }, - "html_url": { + "message": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review comment where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" - ] + "description": "A human-readable description of the error." } - }, - "required": [ - "pull_request_review_comment_url" - ] + } } - ] + } + } + } + } + } + } + } + } + } + } + }, + "delete": { + "summary": "Bulk delete repository custom patterns", + "description": "Bulk deletes secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "tags": [ + "secret-scanning" + ], + "operationId": "secret-scanning/bulk-delete-repo-custom-patterns", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#bulk-delete-repository-custom-patterns" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "custom-patterns" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "patterns" + ], + "properties": { + "patterns": { + "type": "array", + "description": "The list of custom patterns to delete.", + "maxItems": 500, + "items": { + "title": "Secret Scanning Custom Pattern To Delete", + "description": "A custom pattern to delete in a bulk operation.", + "type": "object", + "required": [ + "pattern_id" + ], + "properties": { + "pattern_id": { + "type": "integer", + "description": "The ID of the custom pattern to delete." + }, + "custom_pattern_version": { + "type": [ + "string", + "null" + ], + "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." } + } + } + }, + "post_delete_action": { + "type": "string", + "description": "What to do with alerts associated with the deleted patterns.\n`delete_alerts` permanently removes the alerts.\n`resolve_alerts` resolves the alerts as \"pattern deleted\".\nDefaults to `delete_alerts` when not specified.", + "enum": [ + "delete_alerts", + "resolve_alerts" + ], + "default": "delete_alerts" + } + } + }, + "examples": { + "default": { + "value": { + "patterns": [ + { + "pattern_id": 2, + "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K" + } + ] + } + } + } + } + } + }, + "responses": { + "204": { + "description": "All patterns deleted successfully." + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { + "type": [ + "string", + "null" + ] + }, + "documentation_url": { + "type": [ + "string", + "null" + ] + }, + "detail": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": "integer" + }, + "scimType": { + "type": [ + "string", + "null" + ] + }, + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "412": { + "description": "Precondition Failed", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + } + } + }, + "/repos/{owner}/{repo}/secret-scanning/custom-patterns/{pattern_id}": { + "patch": { + "summary": "Update a repository custom pattern", + "description": "Updates a secret scanning custom pattern for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + "tags": [ + "secret-scanning" + ], + "operationId": "secret-scanning/update-repo-custom-pattern", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#update-a-repository-custom-pattern" + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "custom-patterns" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pattern_id", + "in": "path", + "required": true, + "schema": { + "type": "integer" + }, + "description": "The ID of the custom pattern." + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "title": "Secret Scanning Custom Pattern To Update", + "description": "Fields to update on a custom pattern. At least one updatable field (`pattern`, `start_delimiter`, `end_delimiter`, `must_match`, or `must_not_match`) must also be provided. Only provided fields will be updated.", + "required": [ + "custom_pattern_version" + ], + "anyOf": [ + { + "required": [ + "pattern" + ] + }, + { + "required": [ + "start_delimiter" + ] + }, + { + "required": [ + "end_delimiter" + ] + }, + { + "required": [ + "must_match" + ] + }, + { + "required": [ + "must_not_match" + ] + } + ], + "properties": { + "pattern": { + "type": "string", + "description": "The updated regular expression of the custom pattern." + }, + "start_delimiter": { + "type": "string", + "description": "The updated start delimiter regex for the custom pattern." + }, + "end_delimiter": { + "type": "string", + "description": "The updated end delimiter regex for the custom pattern." + }, + "must_match": { + "type": "array", + "description": "Updated list of regexes that the secret must match.", + "items": { + "type": "string" + } + }, + "must_not_match": { + "type": "array", + "description": "Updated list of regexes that the secret must not match.", + "items": { + "type": "string" + } + }, + "custom_pattern_version": { + "type": [ + "string", + "null" + ], + "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + } + } + }, + "examples": { + "default": { + "value": { + "pattern": "updated_secret_[0-9A-Z]{16}", + "start_delimiter": "[^0-9A-Za-z]", + "end_delimiter": "[^0-9A-Za-z]", + "must_match": [ + "updated_secret_[0-9]{2}*" + ], + "must_not_match": [ + "updated_secret_1234567890ABCDEF" + ], + "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K" + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Pattern updated successfully.", + "content": { + "application/json": { + "schema": { + "title": "Secret Scanning Custom Pattern", + "description": "A custom pattern for secret scanning.", + "type": "object", + "properties": { + "id": { + "type": "integer", + "description": "The ID of the custom pattern." + }, + "name": { + "type": "string", + "description": "The name of the custom pattern." + }, + "pattern": { + "type": "string", + "description": "The regular expression of the custom pattern." + }, + "slug": { + "type": "string", + "description": "A URL-friendly identifier for the custom pattern, derived from its name." + }, + "state": { + "type": "string", + "description": "The state of the custom pattern.", + "enum": [ + "published", + "unpublished" ] }, - "has_more_locations": { + "push_protection_enabled": { "type": "boolean", - "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." + "description": "Whether push protection is enabled for this custom pattern." }, - "assigned_to": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] + "start_delimiter": { + "type": [ + "string", + "null" + ], + "description": "The start delimiter regex for the custom pattern." }, - "closure_request_comment": { + "end_delimiter": { "type": [ "string", "null" ], - "description": "An optional comment from the closure request author." + "description": "The end delimiter regex for the custom pattern." }, - "closure_request_reviewer_comment": { + "must_match": { + "type": [ + "array", + "null" + ], + "description": "List of regexes that the secret must match.", + "items": { + "type": "string" + } + }, + "must_not_match": { + "type": [ + "array", + "null" + ], + "description": "List of regexes that the secret must not match.", + "items": { + "type": "string" + } + }, + "custom_pattern_version": { "type": [ "string", "null" ], - "description": "An optional comment from the closure request reviewer." + "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." }, - "closure_request_reviewer": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "created_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was created in ISO 8601 format." + }, + "updated_at": { + "type": "string", + "format": "date-time", + "description": "The date and time the custom pattern was last updated in ISO 8601 format." + } + }, + "required": [ + "id", + "name", + "pattern", + "slug", + "state", + "push_protection_enabled" + ] + }, + "examples": { + "default": { + "value": { + "id": 1, + "name": "Example Custom Pattern", + "pattern": "updated_secret_[0-9A-Z]{16}", + "slug": "example_custom_pattern", + "state": "published", + "push_protection_enabled": true, + "start_delimiter": "[^0-9A-Za-z]", + "end_delimiter": "[^0-9A-Za-z]", + "must_match": [ + "updated_secret_[0-9]{2}*" + ], + "must_not_match": [ + "updated_secret_1234567890ABCDEF" + ], + "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K", + "created_at": "2024-01-15T10:30:00Z", + "updated_at": "2024-06-01T12:00:00Z" + } + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { + "type": [ + "string", + "null" ] }, - "metadata": { + "documentation_url": { + "type": [ + "string", + "null" + ] + }, + "detail": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": "integer" + }, + "scimType": { + "type": [ + "string", + "null" + ] + }, + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "412": { + "description": "Precondition Failed", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { "type": "array", - "description": "A list of metadata key/value pairs associated with the secret scanning alert.", - "readOnly": true, "items": { "type": "object", + "required": [ + "code" + ], "properties": { - "key": { - "type": "string", - "description": "The metadata key." + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" }, "value": { - "type": "string", - "description": "The metadata value." + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] } - }, - "required": [ - "key", - "value" - ] + } } } } + } + } + } + } + } + } + }, + "/repos/{owner}/{repo}/secret-scanning/push-protection-bypasses": { + "post": { + "summary": "Create a push protection bypass", + "description": "Creates a bypass for a previously push protected secret.\n\nThe authenticated user must be the original author of the committed secret.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint.", + "operationId": "secret-scanning/create-push-protection-bypass", + "tags": [ + "secret-scanning" + ], + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#create-a-push-protection-bypass" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "reason": { + "description": "The reason for bypassing push protection.", + "type": "string", + "enum": [ + "false_positive", + "used_in_tests", + "will_fix_later" + ] + }, + "placeholder_id": { + "description": "The ID of the push protection bypass placeholder. This value is returned on any push protected routes.", + "type": "string" + } }, - "examples": { - "default": { - "value": { - "number": 42, - "created_at": "2020-11-06T18:18:30Z", - "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42", - "html_url": "https://github.com/owner/private-repo/security/secret-scanning/42", - "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42/locations", - "state": "open", - "resolution": null, - "resolved_at": null, - "resolved_by": null, - "secret_type": "mailchimp_api_key", - "secret_type_display_name": "Mailchimp API Key", - "secret": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-us2", - "push_protection_bypassed_by": null, - "push_protection_bypassed": false, - "push_protection_bypassed_at": null, - "push_protection_bypass_request_reviewer": null, - "push_protection_bypass_request_reviewer_comment": null, - "push_protection_bypass_request_comment": null, - "push_protection_bypass_request_html_url": null, - "resolution_comment": null, - "validity": "unknown", - "publicly_leaked": false, - "multi_repo": false, - "metadata": [ - { - "key": "owner_email", - "value": "owner@example.com" - } + "required": [ + "reason", + "placeholder_id" + ] + }, + "examples": { + "default": { + "value": { + "reason": "will_fix_later", + "placeholder_id": "2k4dM4tseyC5lPIsjl5emX9sPNk" + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "reason": { + "description": "The reason for bypassing push protection.", + "type": "string", + "enum": [ + "false_positive", + "used_in_tests", + "will_fix_later" ] + }, + "expire_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the bypass will expire in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." + }, + "token_type": { + "type": "string", + "description": "The token type this bypass is for." + } + } + }, + "examples": { + "default": { + "value": { + "reason": "will_fix_later", + "expire_at": "2020-11-06T18:18:30Z", + "token_type": "mailchimp_api_key" } } } } } }, - "304": { - "description": "Not modified" + "403": { + "description": "User does not have enough permissions to perform this action." }, "404": { - "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" + "description": "Placeholder ID not found, or push protection is disabled on this repository." + }, + "422": { + "description": "Bad request, input data missing or incorrect." }, "503": { "description": "Service unavailable", @@ -672100,22 +684203,24 @@ } }, "x-github": { - "githubCloudOnly": false, "enabledForGitHubApps": true, + "githubCloudOnly": false, "category": "secret-scanning", "subcategory": "secret-scanning" } - }, - "patch": { - "summary": "Update a secret scanning alert", - "description": "Updates the status of a secret scanning alert in an eligible repository.\n\nYou can also use this endpoint to assign or unassign an alert to a user who has write access to the repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "operationId": "secret-scanning/update-alert", + } + }, + "/repos/{owner}/{repo}/secret-scanning/scan-history": { + "get": { + "summary": "Get secret scanning scan history for a repository", + "description": "Lists the latest default incremental and backfill scans by type for a repository.\n\n> [!NOTE]\n> This endpoint requires [GitHub Advanced Security](https://docs.github.com/get-started/learning-about-github/about-github-advanced-security).\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", "tags": [ "secret-scanning" ], + "operationId": "secret-scanning/get-scan-history", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#update-a-secret-scanning-alert" + "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#get-secret-scanning-scan-history-for-a-repository" }, "parameters": [ { @@ -672135,117 +684240,33 @@ "schema": { "type": "string" } - }, - { - "name": "alert_number", - "in": "path", - "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", - "required": true, - "schema": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - } } ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "state": { - "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", - "type": "string", - "enum": [ - "open", - "resolved" - ] - }, - "resolution": { - "type": [ - "string", - "null" - ], - "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", - "enum": [ - "false_positive", - "wont_fix", - "revoked", - "used_in_tests", - null - ] - }, - "resolution_comment": { - "description": "An optional comment when closing or reopening an alert. Cannot be updated or deleted.", - "type": [ - "string", - "null" - ] - }, - "assignee": { - "description": "The username of the user to assign to the alert. Set to `null` to unassign the alert.", - "type": [ - "string", - "null" - ] - }, - "validity": { - "type": [ - "string", - "null" - ], - "enum": [ - "active", - "inactive", - null - ], - "description": "Sets the validity of the secret scanning alert. Can be `active`, `inactive`, or `null` to clear the override." - } - }, - "anyOf": [ - { - "required": [ - "state" - ] - }, - { - "required": [ - "assignee" - ] - }, - { - "required": [ - "validity" - ] - } - ] - }, - "examples": { - "default": { - "value": { - "state": "resolved", - "resolution": "false_positive" - } - }, - "assign": { - "summary": "Assign alert to a user", - "value": { - "assignee": "octocat" - } - }, - "unassign": { - "summary": "Unassign alert", - "value": { - "assignee": null + "responses": { + "404": { + "description": "Repository does not have GitHub Advanced Security or secret scanning enabled" + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } } } } } - } - }, - "responses": { + }, "200": { "description": "Response", "content": { @@ -672253,1113 +684274,1322 @@ "schema": { "type": "object", "properties": { - "number": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true + "incremental_scans": { + "type": "array", + "items": { + "description": "Information on a single scan performed by secret scanning on the repository", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of scan" + }, + "status": { + "type": "string", + "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "completed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was completed. Empty if the scan is running" + }, + "started_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was started. Empty if the scan is pending" + } + } + } }, - "created_at": { - "type": "string", - "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true + "pattern_update_scans": { + "type": "array", + "items": { + "description": "Information on a single scan performed by secret scanning on the repository", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of scan" + }, + "status": { + "type": "string", + "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "completed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was completed. Empty if the scan is running" + }, + "started_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was started. Empty if the scan is pending" + } + } + } }, - "updated_at": { - "anyOf": [ + "backfill_scans": { + "type": "array", + "items": { + "description": "Information on a single scan performed by secret scanning on the repository", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of scan" + }, + "status": { + "type": "string", + "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "completed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was completed. Empty if the scan is running" + }, + "started_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was started. Empty if the scan is pending" + } + } + } + }, + "custom_pattern_backfill_scans": { + "type": "array", + "items": { + "allOf": [ + { + "description": "Information on a single scan performed by secret scanning on the repository", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of scan" + }, + "status": { + "type": "string", + "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "completed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was completed. Empty if the scan is running" + }, + "started_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was started. Empty if the scan is pending" + } + } + }, + { + "type": "object", + "properties": { + "pattern_name": { + "type": "string", + "description": "Name of the custom pattern for custom pattern scans" + }, + "pattern_scope": { + "type": "string", + "description": "Level at which the custom pattern is defined, one of \"repository\", \"organization\", or \"enterprise\"" + } + } + } + ] + } + }, + "generic_secrets_backfill_scans": { + "type": "array", + "items": { + "description": "Information on a single scan performed by secret scanning on the repository", + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of scan" + }, + "status": { + "type": "string", + "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." + }, + "completed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was completed. Empty if the scan is running" + }, + "started_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The time that the scan was started. Empty if the scan is pending" + } + } + } + } + } + }, + "examples": { + "default": { + "value": { + "incremental_scans": [ { - "type": "null" + "type": "git", + "status": "completed", + "completed_at": "2024-10-07T02:47:00Z" + } + ], + "backfill_scans": [ + { + "type": "git", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:50:00Z" }, { - "type": "string", - "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true + "type": "issue", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:49:00Z" + }, + { + "type": "discussion", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:48:00Z" } - ] - }, - "url": { - "type": "string", - "description": "The REST API URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "html_url": { - "type": "string", - "description": "The GitHub URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "locations_url": { - "type": "string", - "format": "uri", - "description": "The REST API URL of the code locations for this alert." - }, - "state": { - "description": "Sets the state of the secret scanning alert. You must provide `resolution` when you set the state to `resolved`.", - "type": "string", - "enum": [ - "open", - "resolved" - ] - }, - "resolution": { - "type": [ - "string", - "null" ], - "description": "**Required when the `state` is `resolved`.** The reason for resolving the alert.", - "enum": [ - "false_positive", - "wont_fix", - "revoked", - "used_in_tests", - null - ] - }, - "resolved_at": { - "type": [ - "string", - "null" + "pattern_update_scans": [ + { + "type": "discussion", + "status": "in_progress", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:51:00Z" + } ], - "format": "date-time", - "description": "The time that the alert was resolved in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "resolved_by": { - "anyOf": [ + "custom_pattern_backfill_scans": [ { - "type": "null" + "type": "git", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:55:00Z", + "pattern_slug": "my-custom-pattern", + "pattern_scope": "enterprise" }, { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "type": "git", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:55:00Z", + "pattern_slug": "my-custom-pattern", + "pattern_scope": "organization" + } + ], + "generic_secrets_backfill_scans": [ + { + "type": "git", + "status": "completed", + "started_at": "2024-10-07T02:47:00Z", + "completed_at": "2024-10-07T02:55:00Z" + } + ] + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "secret-scanning", + "subcategory": "secret-scanning" + } + } + }, + "/repos/{owner}/{repo}/security-advisories": { + "get": { + "summary": "List repository security advisories", + "description": "Lists security advisories in a repository.\n\nThe authenticated user can access unpublished security advisories from a repository if they are a security manager or administrator of that repository, or if they are a collaborator on any security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:read` scope to to get a published security advisory in a private repository, or any unpublished security advisory that the authenticated user has access to.", + "tags": [ + "security-advisories" + ], + "operationId": "security-advisories/list-repository-advisories", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#list-repository-security-advisories" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "direction", + "description": "The direction to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "asc", + "desc" + ], + "default": "desc" + } + }, + { + "name": "sort", + "description": "The property to sort the results by.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "created", + "updated", + "published" + ], + "default": "created" + } + }, + { + "name": "before", + "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for results before this cursor. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "after", + "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for results after this cursor. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "required": false, + "schema": { + "type": "string" + } + }, + { + "name": "per_page", + "description": "The number of advisories to return per page. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "required": false, + "schema": { + "type": "integer", + "minimum": 1, + "maximum": 100, + "default": 30 + } + }, + { + "name": "state", + "description": "Filter by state of the repository advisories. Only advisories of this state will be returned.", + "in": "query", + "required": false, + "schema": { + "type": "string", + "enum": [ + "triage", + "draft", + "published", + "closed" + ] + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "description": "A repository security advisory.", + "type": "object", + "properties": { + "ghsa_id": { + "type": "string", + "description": "The GitHub Security Advisory ID.", + "readOnly": true + }, + "cve_id": { + "type": [ + "string", + "null" + ], + "description": "The Common Vulnerabilities and Exposures (CVE) ID." + }, + "url": { + "type": "string", + "format": "uri", + "description": "The API URL for the advisory.", + "readOnly": true + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The URL for the advisory.", + "readOnly": true + }, + "summary": { + "type": "string", + "description": "A short summary of the advisory.", + "maxLength": 1024 + }, + "description": { + "type": [ + "string", + "null" + ], + "description": "A detailed description of what the advisory entails.", + "maxLength": 65535 + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the advisory.", + "enum": [ + "critical", + "high", + "medium", + "low", + null + ] + }, + "author": { + "readOnly": true, + "description": "The author of the advisory.", + "allOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "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" + ] + } + ], + "type": [ + "null" + ] + }, + "publisher": { + "readOnly": true, + "description": "The publisher of the advisory.", + "allOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } }, + "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" + ] + } + ], + "type": [ + "null" + ] + }, + "identifiers": { + "type": "array", + "items": { + "type": "object", + "properties": { "type": { "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + "description": "The type of identifier.", + "enum": [ + "CVE", + "GHSA" ] }, - "user_view_type": { + "value": { "type": "string", - "examples": [ - "public" - ] + "description": "The identifier value." } }, "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" + "value" ] - } - ] - }, - "resolution_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment to resolve an alert." - }, - "secret_type": { - "type": "string", - "description": "The type of secret that secret scanning detected." - }, - "secret_type_display_name": { - "type": "string", - "description": "User-friendly name for the detected secret, matching the `secret_type`.\nFor a list of built-in patterns, see \"[Supported secret scanning patterns](https://docs.github.com/code-security/secret-scanning/introduction/supported-secret-scanning-patterns#supported-secrets).\"" - }, - "provider": { - "type": [ - "string", - "null" - ], - "description": "The provider of the secret that was detected." - }, - "provider_slug": { - "type": [ - "string", - "null" - ], - "description": "The slug identifier for the provider of the secret that was detected. Use this value for filtering by provider with the `providers` or `exclude_providers` parameters." - }, - "secret": { - "type": "string", - "description": "The secret that was detected." - }, - "push_protection_bypassed": { - "type": [ - "boolean", - "null" - ], - "description": "Whether push protection was bypassed for the detected secret." - }, - "push_protection_bypassed_by": { - "anyOf": [ - { - "type": "null" }, - { - "title": "Simple User", - "description": "A GitHub user.", + "readOnly": true + }, + "state": { + "type": "string", + "description": "The state of the advisory.", + "enum": [ + "published", + "closed", + "withdrawn", + "draft", + "triage" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was created, in ISO 8601 format.", + "readOnly": true + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was last updated, in ISO 8601 format.", + "readOnly": true + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was published, in ISO 8601 format.", + "readOnly": true + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was closed, in ISO 8601 format.", + "readOnly": true + }, + "withdrawn_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was withdrawn, in ISO 8601 format.", + "readOnly": true + }, + "submission": { + "type": [ + "object", + "null" + ], + "readOnly": true, + "properties": { + "accepted": { + "type": "boolean", + "description": "Whether a private vulnerability report was accepted by the repository's administrators.", + "readOnly": true + } + }, + "required": [ + "accepted" + ] + }, + "vulnerabilities": { + "type": [ + "array", + "null" + ], + "items": { + "description": "A product affected by the vulnerability detailed in a repository security advisory.", "type": "object", "properties": { - "name": { + "package": { + "description": "The name of the package affected by the vulnerability.", "type": [ - "string", + "object", "null" + ], + "properties": { + "ecosystem": { + "type": "string", + "description": "The package's language or package management ecosystem.", + "enum": [ + "rubygems", + "npm", + "pip", + "maven", + "nuget", + "composer", + "go", + "rust", + "erlang", + "actions", + "pub", + "other", + "swift" + ] + }, + "name": { + "type": [ + "string", + "null" + ], + "description": "The unique package name within its ecosystem." + } + }, + "required": [ + "ecosystem", + "name" ] }, - "email": { + "vulnerable_version_range": { "type": [ "string", "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] + ], + "description": "The range of the package versions affected by the vulnerability." }, - "gravatar_id": { + "patched_versions": { "type": [ "string", "null" ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "description": "The package version(s) that resolve the vulnerability." }, - "type": { - "type": "string", - "examples": [ - "User" - ] + "vulnerable_functions": { + "type": [ + "array", + "null" + ], + "description": "The functions in the package that are affected.", + "items": { + "type": "string" + } + } + }, + "required": [ + "package", + "vulnerable_version_range", + "patched_versions", + "vulnerable_functions" + ], + "additionalProperties": false + } + }, + "cvss_severities": { + "type": [ + "object", + "null" + ], + "properties": { + "cvss_v3": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS 3 vector string." + }, + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS 3 score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } }, - "site_admin": { - "type": "boolean" + "required": [ + "vector_string", + "score" + ] + }, + "cvss_v4": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS 4 vector string." + }, + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS 4 score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } }, - "starred_at": { + "required": [ + "vector_string", + "score" + ] + } + } + }, + "cwes": { + "type": [ + "array", + "null" + ], + "items": { + "type": "object", + "properties": { + "cwe_id": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "description": "The Common Weakness Enumeration (CWE) identifier." }, - "user_view_type": { + "name": { "type": "string", - "examples": [ - "public" - ] + "description": "The name of the CWE.", + "readOnly": true } }, "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" + "cwe_id", + "name" ] - } - ] - }, - "push_protection_bypassed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that push protection was bypassed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "push_protection_bypass_request_reviewer": { - "anyOf": [ - { - "type": "null" }, - { - "title": "Simple User", - "description": "A GitHub user.", + "readOnly": true + }, + "cwe_ids": { + "type": [ + "array", + "null" + ], + "description": "A list of only the CWE IDs.", + "items": { + "type": "string" + } + }, + "credits": { + "type": [ + "array", + "null" + ], + "items": { "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, "login": { "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "description": "The username of the user credited." }, "type": { "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" ] } - }, - "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" - ] + } } - ] - }, - "push_protection_bypass_request_reviewer_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment when reviewing a push protection bypass." - }, - "push_protection_bypass_request_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment when requesting a push protection bypass." - }, - "push_protection_bypass_request_html_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "description": "The URL to a push protection bypass request." - }, - "validity": { - "type": "string", - "description": "The token status as of the latest validity check.", - "enum": [ - "active", - "inactive", - "unknown" - ] - }, - "publicly_leaked": { - "type": [ - "boolean", - "null" - ], - "description": "Whether the detected secret was publicly leaked." - }, - "multi_repo": { - "type": [ - "boolean", - "null" - ], - "description": "Whether the detected secret was found in multiple repositories under the same organization or enterprise." - }, - "is_base64_encoded": { - "type": [ - "boolean", - "null" - ], - "description": "A boolean value representing whether or not alert is base64 encoded" - }, - "first_location_detected": { - "anyOf": [ - { - "type": "null" - }, - { - "description": "Details on the location where the token was initially detected. This can be a commit, wiki commit, issue, discussion, pull request.\n", - "oneOf": [ - { - "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", - "type": "object", - "properties": { - "path": { - "type": "string", - "description": "The file path in the repository", - "examples": [ - "/example/secrets.txt" - ] - }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "blob_url": { - "type": "string", - "description": "The API URL to get the associated blob resource" - }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" - ] - }, - "commit_url": { - "type": "string", - "description": "The API URL to get the associated commit resource" - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL to get the associated commit resource.", - "examples": [ - "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" - ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "blob_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", + }, + "credits_detailed": { + "type": [ + "array", + "null" + ], + "items": { + "description": "A credit given to a user for a repository security advisory.", + "type": "object", + "properties": { + "user": { + "title": "Simple User", + "description": "A GitHub user.", "type": "object", "properties": { - "path": { - "type": "string", - "description": "The file path of the wiki page", - "examples": [ - "/example/Home.md" + "name": { + "type": [ + "string", + "null" ] }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." - }, - "blob_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated blob", - "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" + "email": { + "type": [ + "string", + "null" ] }, - "page_url": { + "login": { "type": "string", - "description": "The GitHub URL to get the associated wiki page", "examples": [ - "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + "octocat" ] }, - "commit_sha": { - "type": "string", - "description": "SHA-1 hash ID of the associated commit", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "302c0b7e200761c9dd9b57e57db540ee0b4293a5" + 1 ] }, - "commit_url": { - "type": "string", - "description": "The GitHub URL to get the associated wiki commit", - "examples": [ - "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "page_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", - "type": "object", - "properties": { - "issue_title_url": { + "node_id": { "type": "string", - "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" + "MDQ6VXNlcjE=" ] }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } - }, - "required": [ - "issue_title_url" - ] - }, - { - "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", - "type": "object", - "properties": { - "issue_body_url": { + "avatar_url": { "type": "string", "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" + "https://github.com/images/error/octocat_happy.gif" ] }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", - "examples": [ - "https://github.com/octocat/Hello-World/issues/1" - ] - } - }, - "required": [ - "issue_body_url" - ] - }, - { - "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", - "type": "object", - "properties": { - "issue_comment_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get the issue comment where the secret was detected.", + "gravatar_id": { + "type": [ + "string", + "null" + ], "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + "41d064eb2195891e12d0413f63227ea7" ] }, - "html_url": { + "url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the issue comment where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" + "https://api.github.com/users/octocat" ] - } - }, - "required": [ - "issue_comment_url" - ] - }, - { - "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", - "type": "object", - "properties": { - "discussion_title_url": { + }, + "html_url": { "type": "string", "format": "uri", - "description": "The URL to the discussion where the secret was detected.", "examples": [ - "https://github.com/community/community/discussions/39082" + "https://github.com/octocat" ] - } - }, - "required": [ - "discussion_title_url" - ] - }, - { - "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", - "type": "object", - "properties": { - "discussion_body_url": { + }, + "followers_url": { "type": "string", "format": "uri", - "description": "The URL to the discussion where the secret was detected.", "examples": [ - "https://github.com/community/community/discussions/39082#discussion-4566270" + "https://api.github.com/users/octocat/followers" ] - } - }, - "required": [ - "discussion_body_url" - ] - }, - { - "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", - "type": "object", - "properties": { - "discussion_comment_url": { + }, + "following_url": { "type": "string", - "format": "uri", - "description": "The API URL to get the discussion comment where the secret was detected.", "examples": [ - "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + "https://api.github.com/users/octocat/following{/other_user}" ] - } - }, - "required": [ - "discussion_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", - "type": "object", - "properties": { - "pull_request_title_url": { + }, + "gists_url": { "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "html_url": { + "starred_url": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] - } - }, - "required": [ - "pull_request_title_url" - ] - }, - { - "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", - "type": "object", - "properties": { - "pull_request_body_url": { + }, + "subscriptions_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + "https://api.github.com/users/octocat/subscriptions" ] }, - "html_url": { + "organizations_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" + "https://api.github.com/users/octocat/orgs" ] - } - }, - "required": [ - "pull_request_body_url" - ] - }, - { - "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", - "type": "object", - "properties": { - "pull_request_comment_url": { + }, + "repos_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request comment where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + "https://api.github.com/users/octocat/repos" ] }, - "html_url": { + "events_url": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request comment where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" + "https://api.github.com/users/octocat/events{/privacy}" ] - } - }, - "required": [ - "pull_request_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", - "type": "object", - "properties": { - "pull_request_review_url": { + }, + "received_events_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request review where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + "https://api.github.com/users/octocat/received_events" ] }, - "html_url": { + "type": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" + "User" ] - } - }, - "required": [ - "pull_request_review_url" - ] - }, - { - "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", - "type": "object", - "properties": { - "pull_request_review_comment_url": { + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { "type": "string", - "format": "uri", - "description": "The API URL to get the pull request review comment where the secret was detected.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + "\"2020-07-09T00:17:55Z\"" ] }, - "html_url": { + "user_view_type": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request review comment where the secret was detected.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" + "public" ] } }, "required": [ - "pull_request_review_comment_url" + "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" + ] + }, + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + }, + "state": { + "type": "string", + "description": "The state of the user's acceptance of the credit.", + "enum": [ + "accepted", + "declined", + "pending" ] } - ] - } - ] - }, - "has_more_locations": { - "type": "boolean", - "description": "A boolean value representing whether or not the token in the alert was detected in more than one location." - }, - "assigned_to": { - "anyOf": [ - { - "type": "null" + }, + "required": [ + "user", + "type", + "state" + ], + "additionalProperties": false }, - { + "readOnly": true + }, + "collaborating_users": { + "type": [ + "array", + "null" + ], + "description": "A list of users that collaborate on the advisory.", + "items": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -673527,1559 +685757,1315 @@ "url" ] } - ] - }, - "closure_request_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment from the closure request author." - }, - "closure_request_reviewer_comment": { - "type": [ - "string", - "null" - ], - "description": "An optional comment from the closure request reviewer." - }, - "closure_request_reviewer": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", + }, + "collaborating_teams": { + "type": [ + "array", + "null" + ], + "description": "A list of teams that collaborate on the advisory.", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + "type": "integer" }, "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] + "type": "string" }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] + "name": { + "type": "string" }, - "gravatar_id": { + "slug": { + "type": "string" + }, + "description": { "type": [ "string", "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" ] }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] + "privacy": { + "type": "string" }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] + "notification_setting": { + "type": "string" }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] + "permission": { + "type": "string" }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" ] }, - "starred_url": { + "url": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] + "format": "uri" }, - "subscriptions_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "https://github.com/orgs/rails/teams/core" ] }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] + "members_url": { + "type": "string" }, - "repos_url": { + "repositories_url": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] + "format": "uri" }, - "events_url": { + "type": { + "description": "The ownership type of the team", "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "enum": [ + "enterprise", + "organization" ] }, - "received_events_url": { + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", "type": "string", - "format": "uri", + "enum": [ + "direct", + "organization", + "enterprise" + ], "examples": [ - "https://api.github.com/users/octocat/received_events" + "direct" ] }, - "type": { - "type": "string", + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", "examples": [ - "User" + 37 ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", "examples": [ - "\"2020-07-09T00:17:55Z\"" + 42 ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } ] } }, "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" + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" ] } - ] - }, - "metadata": { - "type": "array", - "description": "A list of metadata key/value pairs associated with the secret scanning alert.", - "readOnly": true, - "items": { - "type": "object", - "properties": { - "key": { - "type": "string", - "description": "The metadata key." - }, - "value": { - "type": "string", - "description": "The metadata value." - } - }, - "required": [ - "key", - "value" - ] - } - } - } - }, - "examples": { - "default": { - "value": { - "number": 42, - "created_at": "2020-11-06T18:18:30Z", - "url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42", - "html_url": "https://github.com/owner/private-repo/security/secret-scanning/42", - "locations_url": "https://api.github.com/repos/owner/private-repo/secret-scanning/alerts/42/locations", - "state": "resolved", - "resolution": "used_in_tests", - "resolved_at": "2020-11-16T22:42:07Z", - "resolved_by": { - "login": "monalisa", - "id": 2, - "node_id": "MDQ6VXNlcjI=", - "avatar_url": "https://alambic.github.com/avatars/u/2?", - "gravatar_id": "", - "url": "https://api.github.com/users/monalisa", - "html_url": "https://github.com/monalisa", - "followers_url": "https://api.github.com/users/monalisa/followers", - "following_url": "https://api.github.com/users/monalisa/following{/other_user}", - "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", - "organizations_url": "https://api.github.com/users/monalisa/orgs", - "repos_url": "https://api.github.com/users/monalisa/repos", - "events_url": "https://api.github.com/users/monalisa/events{/privacy}", - "received_events_url": "https://api.github.com/users/monalisa/received_events", - "type": "User", - "site_admin": true - }, - "secret_type": "mailchimp_api_key", - "secret_type_display_name": "Mailchimp API Key", - "secret": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-us2", - "push_protection_bypassed": false, - "push_protection_bypassed_by": null, - "push_protection_bypassed_at": null, - "push_protection_bypass_request_reviewer": null, - "push_protection_bypass_request_reviewer_comment": null, - "push_protection_bypass_request_comment": null, - "push_protection_bypass_request_html_url": null, - "resolution_comment": "Example comment", - "validity": "unknown", - "publicly_leaked": false, - "multi_repo": false, - "metadata": [ - { - "key": "owner_email", - "value": "owner@example.com" - } - ], - "assigned_to": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://alambic.github.com/avatars/u/1?", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - } - } - } - } - } - } - }, - "400": { - "description": "Bad request, resolution comment is invalid or the resolution was not changed." - }, - "403": { - "description": "Delegated alert dismissal is enabled and the authenticated user is not a valid reviewer." - }, - "404": { - "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" - }, - "422": { - "description": "State does not match the resolution or resolution comment, assignee does not have write access to the repository, or the requested validity change could not be applied to this alert" - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "enabledForGitHubApps": true, - "githubCloudOnly": false, - "category": "secret-scanning", - "subcategory": "secret-scanning" - } - } - }, - "/repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations": { - "get": { - "summary": "List locations for a secret scanning alert", - "description": "Lists all locations for a given secret scanning alert for an eligible repository.\n\nThe authenticated user must be an administrator for the repository or for the organization that owns the repository to use this endpoint.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "tags": [ - "secret-scanning" - ], - "operationId": "secret-scanning/list-locations-for-alert", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#list-locations-for-a-secret-scanning-alert" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alert_number", - "in": "path", - "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", - "required": true, - "schema": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "description": "List of locations where the secret was detected", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "enum": [ - "commit", - "wiki_commit", - "issue_title", - "issue_body", - "issue_comment", - "discussion_title", - "discussion_body", - "discussion_comment", - "pull_request_title", - "pull_request_body", - "pull_request_comment", - "pull_request_review", - "pull_request_review_comment" - ], - "description": "The location type. Because secrets may be found in different types of resources (ie. code, comments, issues, pull requests, discussions), this field identifies the type of resource where the secret was found.", - "examples": [ - "commit" - ] }, - "details": { - "oneOf": [ + "private_fork": { + "readOnly": true, + "description": "A temporary private fork of the advisory's repository for collaborating on a fix.", + "allOf": [ { - "description": "Represents a 'commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository.", + "title": "Simple Repository", + "description": "A GitHub repository.", "type": "object", "properties": { - "path": { + "id": { + "type": "integer", + "format": "int64", + "description": "A unique identifier of the repository.", + "examples": [ + 1296269 + ] + }, + "node_id": { "type": "string", - "description": "The file path in the repository", + "description": "The GraphQL identifier of the repository.", "examples": [ - "/example/secrets.txt" + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "type": "string", + "description": "The name of the repository.", + "examples": [ + "Hello-World" + ] + }, + "full_name": { + "type": "string", + "description": "The full, globally unique, name of the repository.", + "examples": [ + "octocat/Hello-World" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" ] }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" + "private": { + "type": "boolean", + "description": "Whether the repository is private." }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" + "html_url": { + "type": "string", + "format": "uri", + "description": "The URL to view the repository on GitHub.com.", + "examples": [ + "https://github.com/octocat/Hello-World" + ] }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8BIT ASCII" + "description": { + "type": [ + "string", + "null" + ], + "description": "The repository description.", + "examples": [ + "This your first repo!" + ] }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8BIT ASCII" + "fork": { + "type": "boolean", + "description": "Whether the repository is a fork." }, - "blob_sha": { + "url": { "type": "string", - "description": "SHA-1 hash ID of the associated blob", + "format": "uri", + "description": "The URL to get more information about the repository from the GitHub API.", "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" + "https://api.github.com/repos/octocat/Hello-World" ] }, - "blob_url": { + "archive_url": { "type": "string", - "description": "The API URL to get the associated blob resource" + "description": "A template for the API URL to download the repository as an archive.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] }, - "commit_sha": { + "assignees_url": { "type": "string", - "description": "SHA-1 hash ID of the associated commit", + "description": "A template for the API URL to list the available assignees for issues in the repository.", "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" + "https://api.github.com/repos/octocat/Hello-World/assignees{/user}" ] }, - "commit_url": { + "blobs_url": { "type": "string", - "description": "The API URL to get the associated commit resource" + "description": "A template for the API URL to create or retrieve a raw Git blob in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] }, - "html_url": { + "branches_url": { "type": "string", - "format": "uri", - "description": "The GitHub URL to get the associated commit resource.", + "description": "A template for the API URL to get information about branches in the repository.", "examples": [ - "https://github.com/octocat/Hello-World/blob/af5626b/example/secrets.txt#L1-L1" + "https://api.github.com/repos/octocat/Hello-World/branches{/branch}" ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "blob_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents a 'wiki_commit' secret scanning location type. This location type shows that a secret was detected inside a commit to a repository wiki.", - "type": "object", - "properties": { - "path": { + }, + "collaborators_url": { "type": "string", - "description": "The file path of the wiki page", + "description": "A template for the API URL to get information about collaborators of the repository.", "examples": [ - "/example/Home.md" + "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" ] }, - "start_line": { - "type": "number", - "description": "Line number at which the secret starts in the file" - }, - "end_line": { - "type": "number", - "description": "Line number at which the secret ends in the file" - }, - "start_column": { - "type": "number", - "description": "The column at which the secret starts within the start line when the file is interpreted as 8-bit ASCII." - }, - "end_column": { - "type": "number", - "description": "The column at which the secret ends within the end line when the file is interpreted as 8-bit ASCII." + "comments_url": { + "type": "string", + "description": "A template for the API URL to get information about comments on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] }, - "blob_sha": { + "commits_url": { "type": "string", - "description": "SHA-1 hash ID of the associated blob", + "description": "A template for the API URL to get information about commits on the repository.", "examples": [ - "af5626b4a114abcb82d63db7c8082c3c4756e51b" + "https://api.github.com/repos/octocat/Hello-World/commits{/sha}" ] }, - "page_url": { + "compare_url": { "type": "string", - "description": "The GitHub URL to get the associated wiki page", + "description": "A template for the API URL to compare two commits or refs.", "examples": [ - "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" ] }, - "commit_sha": { + "contents_url": { "type": "string", - "description": "SHA-1 hash ID of the associated commit", + "description": "A template for the API URL to get the contents of the repository.", "examples": [ - "302c0b7e200761c9dd9b57e57db540ee0b4293a5" + "https://api.github.com/repos/octocat/Hello-World/contents/{+path}" ] }, - "commit_url": { + "contributors_url": { "type": "string", - "description": "The GitHub URL to get the associated wiki commit", + "format": "uri", + "description": "A template for the API URL to list the contributors to the repository.", "examples": [ - "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" + "https://api.github.com/repos/octocat/Hello-World/contributors" ] - } - }, - "required": [ - "path", - "start_line", - "end_line", - "start_column", - "end_column", - "blob_sha", - "page_url", - "commit_sha", - "commit_url" - ] - }, - { - "description": "Represents an 'issue_title' secret scanning location type. This location type shows that a secret was detected in the title of an issue.", - "type": "object", - "properties": { - "issue_title_url": { + }, + "deployments_url": { "type": "string", "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", + "description": "The API URL to list the deployments of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" + "https://api.github.com/repos/octocat/Hello-World/deployments" ] }, - "html_url": { + "downloads_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", + "description": "The API URL to list the downloads on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/issues/1" + "https://api.github.com/repos/octocat/Hello-World/downloads" ] - } - }, - "required": [ - "issue_title_url" - ] - }, - { - "description": "Represents an 'issue_body' secret scanning location type. This location type shows that a secret was detected in the body of an issue.", - "type": "object", - "properties": { - "issue_body_url": { + }, + "events_url": { "type": "string", "format": "uri", - "description": "The API URL to get the issue where the secret was detected.", + "description": "The API URL to list the events of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/1347" + "https://api.github.com/repos/octocat/Hello-World/events" ] }, - "html_url": { + "forks_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the issue where the secret was detected.", + "description": "The API URL to list the forks of the repository.", "examples": [ - "https://github.com/octocat/Hello-World/issues/1" + "https://api.github.com/repos/octocat/Hello-World/forks" ] - } - }, - "required": [ - "issue_body_url" - ] - }, - { - "description": "Represents an 'issue_comment' secret scanning location type. This location type shows that a secret was detected in a comment on an issue.", - "type": "object", - "properties": { + }, + "git_commits_url": { + "type": "string", + "description": "A template for the API URL to get information about Git commits of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "description": "A template for the API URL to get information about Git refs of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "description": "A template for the API URL to get information about Git tags of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, "issue_comment_url": { "type": "string", - "format": "uri", - "description": "The API URL to get the issue comment where the secret was detected.", + "description": "A template for the API URL to get information about issue comments on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" ] }, - "html_url": { + "issue_events_url": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the issue comment where the secret was detected.", + "description": "A template for the API URL to get information about issue events on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/issues/1#issuecomment-1081119451" + "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}" ] - } - }, - "required": [ - "issue_comment_url" - ] - }, - { - "description": "Represents a 'discussion_title' secret scanning location type. This location type shows that a secret was detected in the title of a discussion.", - "type": "object", - "properties": { - "discussion_title_url": { + }, + "issues_url": { "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", + "description": "A template for the API URL to get information about issues on the repository.", "examples": [ - "https://github.com/community/community/discussions/39082" + "https://api.github.com/repos/octocat/Hello-World/issues{/number}" ] - } - }, - "required": [ - "discussion_title_url" - ] - }, - { - "description": "Represents a 'discussion_body' secret scanning location type. This location type shows that a secret was detected in the body of a discussion.", - "type": "object", - "properties": { - "discussion_body_url": { + }, + "keys_url": { "type": "string", - "format": "uri", - "description": "The URL to the discussion where the secret was detected.", + "description": "A template for the API URL to get information about deploy keys on the repository.", "examples": [ - "https://github.com/community/community/discussions/39082#discussion-4566270" + "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}" ] - } - }, - "required": [ - "discussion_body_url" - ] - }, - { - "description": "Represents a 'discussion_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a discussion.", - "type": "object", - "properties": { - "discussion_comment_url": { + }, + "labels_url": { "type": "string", - "format": "uri", - "description": "The API URL to get the discussion comment where the secret was detected.", + "description": "A template for the API URL to get information about labels of the repository.", "examples": [ - "https://github.com/community/community/discussions/39082#discussioncomment-4158232" + "https://api.github.com/repos/octocat/Hello-World/labels{/name}" ] - } - }, - "required": [ - "discussion_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_title' secret scanning location type. This location type shows that a secret was detected in the title of a pull request.", - "type": "object", - "properties": { - "pull_request_title_url": { + }, + "languages_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", + "description": "The API URL to get information about the languages of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + "https://api.github.com/repos/octocat/Hello-World/languages" ] }, - "html_url": { + "merges_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", + "description": "The API URL to merge branches in the repository.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" + "https://api.github.com/repos/octocat/Hello-World/merges" ] - } - }, - "required": [ - "pull_request_title_url" - ] - }, - { - "description": "Represents a 'pull_request_body' secret scanning location type. This location type shows that a secret was detected in the body of a pull request.", - "type": "object", - "properties": { - "pull_request_body_url": { + }, + "milestones_url": { "type": "string", - "format": "uri", - "description": "The API URL to get the pull request where the secret was detected.", + "description": "A template for the API URL to get information about milestones of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846" + "https://api.github.com/repos/octocat/Hello-World/milestones{/number}" ] }, - "html_url": { + "notifications_url": { "type": "string", - "format": "uri", - "description": "The GitHub URL for the pull request where the secret was detected.", + "description": "A template for the API URL to get information about notifications on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846" + "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" ] - } - }, - "required": [ - "pull_request_body_url" - ] - }, - { - "description": "Represents a 'pull_request_comment' secret scanning location type. This location type shows that a secret was detected in a comment on a pull request.", - "type": "object", - "properties": { - "pull_request_comment_url": { + }, + "pulls_url": { "type": "string", - "format": "uri", - "description": "The API URL to get the pull request comment where the secret was detected.", + "description": "A template for the API URL to get information about pull requests on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" + "https://api.github.com/repos/octocat/Hello-World/pulls{/number}" ] }, - "html_url": { + "releases_url": { + "type": "string", + "description": "A template for the API URL to get information about releases on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "stargazers_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the pull request comment where the secret was detected.", + "description": "The API URL to list the stargazers on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#issuecomment-1081119451" + "https://api.github.com/repos/octocat/Hello-World/stargazers" ] - } - }, - "required": [ - "pull_request_comment_url" - ] - }, - { - "description": "Represents a 'pull_request_review' secret scanning location type. This location type shows that a secret was detected in a review on a pull request.", - "type": "object", - "properties": { - "pull_request_review_url": { + }, + "statuses_url": { + "type": "string", + "description": "A template for the API URL to get information about statuses of a commit.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request review where the secret was detected.", + "description": "The API URL to list the subscribers on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" + "https://api.github.com/repos/octocat/Hello-World/subscribers" ] }, - "html_url": { + "subscription_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the pull request review where the secret was detected.", + "description": "The API URL to subscribe to notifications for this repository.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#pullrequestreview-80" + "https://api.github.com/repos/octocat/Hello-World/subscription" ] - } - }, - "required": [ - "pull_request_review_url" - ] - }, - { - "description": "Represents a 'pull_request_review_comment' secret scanning location type. This location type shows that a secret was detected in a review comment on a pull request.", - "type": "object", - "properties": { - "pull_request_review_comment_url": { + }, + "tags_url": { "type": "string", "format": "uri", - "description": "The API URL to get the pull request review comment where the secret was detected.", + "description": "The API URL to get information about tags on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" + "https://api.github.com/repos/octocat/Hello-World/tags" ] }, - "html_url": { + "teams_url": { "type": "string", "format": "uri", - "description": "The GitHub URL for the pull request review comment where the secret was detected.", + "description": "The API URL to list the teams on the repository.", "examples": [ - "https://github.com/octocat/Hello-World/pull/2846#discussion_r12" + "https://api.github.com/repos/octocat/Hello-World/teams" ] - } - }, - "required": [ - "pull_request_review_comment_url" - ] - } - ] - } - } - } - }, - "examples": { - "default": { - "value": [ - { - "type": "commit", - "details": { - "path": "/example/secrets.txt", - "start_line": 1, - "end_line": 1, - "start_column": 1, - "end_column": 64, - "blob_sha": "af5626b4a114abcb82d63db7c8082c3c4756e51b", - "blob_url": "https://api.github.com/repos/octocat/hello-world/git/blobs/af5626b4a114abcb82d63db7c8082c3c4756e51b", - "commit_sha": "f14d7debf9775f957cf4f1e8176da0786431f72b", - "commit_url": "https://api.github.com/repos/octocat/hello-world/git/commits/f14d7debf9775f957cf4f1e8176da0786431f72b" - } - }, - { - "type": "wiki_commit", - "details": { - "path": "/example/Home.md", - "start_line": 1, - "end_line": 1, - "start_column": 1, - "end_column": 64, - "blob_sha": "af5626b4a114abcb82d63db7c8082c3c4756e51b", - "page_url": "https://github.com/octocat/Hello-World/wiki/Home/302c0b7e200761c9dd9b57e57db540ee0b4293a5", - "commit_sha": "302c0b7e200761c9dd9b57e57db540ee0b4293a5", - "commit_url": "https://github.com/octocat/Hello-World/wiki/_compare/302c0b7e200761c9dd9b57e57db540ee0b4293a5" - } - }, - { - "type": "issue_title", - "details": { - "issue_title_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347" - } - }, - { - "type": "issue_body", - "details": { - "issue_body_url": "https://api.github.com/repos/octocat/Hello-World/issues/1347" - } - }, - { - "type": "issue_comment", - "details": { - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments/1081119451" - } - }, - { - "type": "discussion_title", - "details": { - "discussion_title_url": "https://github.com/community/community/discussions/39082" - } - }, - { - "type": "discussion_body", - "details": { - "discussion_body_url": "https://github.com/community/community/discussions/39082#discussion-4566270" - } - }, - { - "type": "discussion_comment", - "details": { - "discussion_comment_url": "https://github.com/community/community/discussions/39082#discussioncomment-4158232" - } - }, - { - "type": "pull_request_title", - "details": { - "pull_request_title_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - } - }, - { - "type": "pull_request_body", - "details": { - "pull_request_body_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846" - } - }, - { - "type": "pull_request_comment", - "details": { - "pull_request_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments/1825855898" - } - }, - { - "type": "pull_request_review", - "details": { - "pull_request_review_url": "https://api.github.com/repos/octocat/Hello-World/pulls/2846/reviews/80" - } - }, - { - "type": "pull_request_review_comment", - "details": { - "pull_request_review_comment_url": "https://api.github.com/repos/octocat/Hello-World/pulls/comments/12" - } - } - ] - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - }, - "404": { - "description": "Repository is public, or secret scanning is disabled for the repository, or the resource is not found" - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "secret-scanning" - } - } - }, - "/repos/{owner}/{repo}/secret-scanning/custom-patterns": { - "get": { - "summary": "List repository custom patterns", - "description": "Lists secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "tags": [ - "secret-scanning" - ], - "operationId": "secret-scanning/list-repo-custom-patterns", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#list-repository-custom-patterns" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "custom-patterns" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "state", - "description": "Filter custom patterns by state. When absent, returns patterns in all states.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "published", - "unpublished" - ] - } - }, - { - "name": "push_protection", - "description": "Filter custom patterns by whether push protection is enabled. When absent, returns patterns regardless of push protection status.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - }, - { - "name": "sort", - "description": "The property to sort the results by.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "created", - "updated", - "name" - ], - "default": "created" - } - }, - { - "name": "direction", - "description": "The direction to sort the results by.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "asc", - "desc" - ], - "default": "desc" - } - }, - { - "name": "page", - "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 1 - } - }, - { - "name": "per_page", - "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "schema": { - "type": "integer", - "default": 30 - } - } - ], - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "title": "Secret Scanning Custom Pattern", - "description": "A custom pattern for secret scanning.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "The ID of the custom pattern." - }, - "name": { - "type": "string", - "description": "The name of the custom pattern." - }, - "pattern": { - "type": "string", - "description": "The regular expression of the custom pattern." - }, - "slug": { - "type": "string", - "description": "A URL-friendly identifier for the custom pattern, derived from its name." - }, - "state": { - "type": "string", - "description": "The state of the custom pattern.", - "enum": [ - "published", - "unpublished" - ] - }, - "push_protection_enabled": { - "type": "boolean", - "description": "Whether push protection is enabled for this custom pattern." - }, - "start_delimiter": { - "type": [ - "string", - "null" - ], - "description": "The start delimiter regex for the custom pattern." - }, - "end_delimiter": { - "type": [ - "string", - "null" - ], - "description": "The end delimiter regex for the custom pattern." - }, - "must_match": { - "type": [ - "array", - "null" - ], - "description": "List of regexes that the secret must match.", - "items": { - "type": "string" - } - }, - "must_not_match": { - "type": [ - "array", - "null" - ], - "description": "List of regexes that the secret must not match.", - "items": { - "type": "string" - } - }, - "custom_pattern_version": { - "type": [ - "string", - "null" - ], - "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." - }, - "created_at": { - "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was created in ISO 8601 format." - }, - "updated_at": { - "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was last updated in ISO 8601 format." - } - }, - "required": [ - "id", - "name", - "pattern", - "slug", - "state", - "push_protection_enabled" - ] - } - }, - "examples": { - "default": { - "value": [ - { - "id": 1, - "name": "Example Custom Pattern", - "pattern": "[a-z]+_token_[0-9]+", - "slug": "example-custom-pattern", - "state": "published", - "push_protection_enabled": true, - "start_delimiter": null, - "end_delimiter": null, - "must_match": null, - "must_not_match": null, - "created_at": "2024-01-15T10:30:00Z", - "updated_at": "2024-01-15T10:30:00Z" - }, - { - "id": 2, - "name": "Another Custom Pattern", - "pattern": "prefix_[a-zA-Z0-9]{32}", - "slug": "another-custom-pattern", - "state": "published", - "push_protection_enabled": false, - "start_delimiter": "\\b", - "end_delimiter": "\\b", - "must_match": [ - "^prefix_prod" - ], - "must_not_match": [ - "test" - ], - "created_at": "2024-01-16T14:20:00Z", - "updated_at": "2024-01-17T09:15:00Z" - } - ] - } - } - } - }, - "headers": { - "Link": { - "example": "; rel=\"next\", ; rel=\"last\"", - "schema": { - "type": "string" - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } - } - }, - "post": { - "summary": "Bulk create repository custom patterns", - "description": "Bulk creates secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "tags": [ - "secret-scanning" - ], - "operationId": "secret-scanning/bulk-create-repo-custom-patterns", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#bulk-create-repository-custom-patterns" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "custom-patterns" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "required": [ - "patterns" - ], - "properties": { - "patterns": { - "type": "array", - "description": "The list of custom patterns to create.", - "items": { - "title": "Secret Scanning Custom Pattern To Create", - "description": "A custom pattern to create in a bulk operation.", - "type": "object", - "required": [ - "name", - "pattern" - ], - "properties": { - "name": { - "type": "string", - "description": "The name of the custom pattern." - }, - "pattern": { - "type": "string", - "description": "The regular expression of the custom pattern." - }, - "start_delimiter": { - "type": "string", - "description": "The start delimiter regex for the custom pattern.\nDefaults to `\\A|[^0-9A-Za-z]` when not specified.", - "default": "\\A|[^0-9A-Za-z]" - }, - "end_delimiter": { - "type": "string", - "description": "The end delimiter regex for the custom pattern.\nDefaults to `\\z|[^0-9A-Za-z]` when not specified.", - "default": "\\z|[^0-9A-Za-z]" - }, - "must_match": { - "type": "array", - "description": "List of regexes that the secret must match.", - "items": { - "type": "string" - } - }, - "must_not_match": { - "type": "array", - "description": "List of regexes that the secret must not match.", - "items": { - "type": "string" + }, + "trees_url": { + "type": "string", + "description": "A template for the API URL to create or retrieve a raw Git tree of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the hooks on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/hooks" + ] + } + }, + "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" + ] } - } - } - } - } - } - }, - "examples": { - "default": { - "value": { - "patterns": [ - { - "name": "Example Custom Pattern", - "pattern": "[a-z]+_token_[0-9]+" - }, - { - "name": "Another Custom Pattern", - "pattern": "prefix_[a-zA-Z0-9]{32}", - "start_delimiter": "\\b", - "end_delimiter": "\\b", - "must_match": [ - "^prefix_prod" ], - "must_not_match": [ - "test" + "type": [ + "null" ] } - ] + }, + "required": [ + "ghsa_id", + "cve_id", + "url", + "html_url", + "summary", + "description", + "severity", + "author", + "publisher", + "identifiers", + "state", + "created_at", + "updated_at", + "published_at", + "closed_at", + "withdrawn_at", + "submission", + "vulnerabilities", + "cwes", + "cwe_ids", + "credits", + "credits_detailed", + "collaborating_users", + "collaborating_teams", + "private_fork" + ], + "additionalProperties": false } - } - } - } - } - }, - "responses": { - "201": { - "description": "All patterns created successfully.", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "created_patterns": { - "type": "array", - "description": "The list of successfully created custom patterns.", - "items": { - "title": "Secret Scanning Custom Pattern", - "description": "A custom pattern for secret scanning.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "description": "The ID of the custom pattern." - }, - "name": { - "type": "string", - "description": "The name of the custom pattern." - }, - "pattern": { - "type": "string", - "description": "The regular expression of the custom pattern." - }, - "slug": { - "type": "string", - "description": "A URL-friendly identifier for the custom pattern, derived from its name." + }, + "examples": { + "default": { + "value": [ + { + "ghsa_id": "GHSA-abcd-1234-efgh", + "cve_id": "CVE-2050-00000", + "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", + "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", + "summary": "A short summary of the advisory.", + "description": "A detailed description of what the advisory entails.", + "severity": "critical", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "publisher": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "identifiers": [ + { + "type": "GHSA", + "value": "GHSA-abcd-1234-efgh" }, - "state": { - "type": "string", - "description": "The state of the custom pattern.", - "enum": [ - "published", - "unpublished" + { + "type": "CVE", + "value": "CVE-2050-00000" + } + ], + "state": "published", + "created_at": "2020-01-01T00:00:00Z", + "updated_at": "2020-01-02T00:00:00Z", + "published_at": "2020-01-03T00:00:00Z", + "closed_at": null, + "withdrawn_at": null, + "submission": null, + "vulnerabilities": [ + { + "package": { + "ecosystem": "pip", + "name": "a-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", + "vulnerable_functions": [ + "function1" ] }, - "push_protection_enabled": { - "type": "boolean", - "description": "Whether push protection is enabled for this custom pattern." - }, - "start_delimiter": { - "type": [ - "string", - "null" - ], - "description": "The start delimiter regex for the custom pattern." - }, - "end_delimiter": { - "type": [ - "string", - "null" - ], - "description": "The end delimiter regex for the custom pattern." - }, - "must_match": { - "type": [ - "array", - "null" - ], - "description": "List of regexes that the secret must match.", - "items": { - "type": "string" - } - }, - "must_not_match": { - "type": [ - "array", - "null" - ], - "description": "List of regexes that the secret must not match.", - "items": { - "type": "string" - } + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" + ] + } + ], + "cvss": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 + }, + "cvss_severities": { + "cvss_v3": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 }, - "custom_pattern_version": { - "type": [ - "string", - "null" - ], - "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + "cvss_v4": { + "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", + "score": 9.3 + } + }, + "cwes": [ + { + "cwe_id": "CWE-123", + "name": "A CWE" + } + ], + "cwe_ids": [ + "CWE-123" + ], + "credits": [ + { + "login": "octocat", + "type": "analyst" + } + ], + "credits_detailed": [ + { + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "type": "analyst", + "state": "accepted" + } + ], + "collaborating_users": [ + { + "login": "octokitten", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octokitten_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octokitten", + "html_url": "https://github.com/octokitten", + "followers_url": "https://api.github.com/users/octokitten/followers", + "following_url": "https://api.github.com/users/octokitten/following{/other_user}", + "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", + "organizations_url": "https://api.github.com/users/octokitten/orgs", + "repos_url": "https://api.github.com/users/octokitten/repos", + "events_url": "https://api.github.com/users/octokitten/events{/privacy}", + "received_events_url": "https://api.github.com/users/octokitten/received_events", + "type": "User", + "site_admin": false + } + ], + "collaborating_teams": [ + { + "name": "Justice League", + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "permission": "admin", + "parent": null + } + ], + "private_fork": null + }, + { + "ghsa_id": "GHSA-1234-5678-9012", + "cve_id": "CVE-2051-0000", + "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-1234-5678-9012", + "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-1234-5678-9012", + "summary": "A short summary of the advisory.", + "description": "A detailed description of what the advisory entails.", + "severity": "low", + "author": { + "login": "monauser", + "id": 2, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/monauser", + "html_url": "https://github.com/monauser", + "followers_url": "https://api.github.com/users/monauser/followers", + "following_url": "https://api.github.com/users/monauser/following{/other_user}", + "gists_url": "https://api.github.com/users/monauser/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monauser/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monauser/subscriptions", + "organizations_url": "https://api.github.com/users/monauser/orgs", + "repos_url": "https://api.github.com/users/monauser/repos", + "events_url": "https://api.github.com/users/monauser/events{/privacy}", + "received_events_url": "https://api.github.com/users/monauser/received_events", + "type": "User", + "site_admin": false + }, + "publisher": { + "login": "monalisa", + "id": 3, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/monalisa", + "html_url": "https://github.com/monalisa", + "followers_url": "https://api.github.com/users/monalisa/followers", + "following_url": "https://api.github.com/users/monalisa/following{/other_user}", + "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", + "organizations_url": "https://api.github.com/users/monalisa/orgs", + "repos_url": "https://api.github.com/users/monalisa/repos", + "events_url": "https://api.github.com/users/monalisa/events{/privacy}", + "received_events_url": "https://api.github.com/users/monalisa/received_events", + "type": "User", + "site_admin": false + }, + "identifiers": [ + { + "type": "GHSA", + "value": "GHSA-1234-5678-9012" }, - "created_at": { - "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was created in ISO 8601 format." + { + "type": "CVE", + "value": "CVE-2051-00000" + } + ], + "state": "published", + "created_at": "2020-01-03T00:00:00Z", + "updated_at": "2020-01-04T00:00:00Z", + "published_at": "2020-01-04T00:00:00Z", + "closed_at": null, + "withdrawn_at": null, + "submission": { + "accepted": true + }, + "vulnerabilities": [ + { + "package": { + "ecosystem": "pip", + "name": "a-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", + "vulnerable_functions": [ + "function1" + ] }, - "updated_at": { - "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was last updated in ISO 8601 format." + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" + ] } + ], + "cvss": { + "vector_string": "AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N", + "score": 1.6 }, - "required": [ - "id", - "name", - "pattern", - "slug", - "state", - "push_protection_enabled" - ] - } - } - } - }, - "examples": { - "default": { - "value": { - "created_patterns": [ - { - "id": 1, - "name": "Example Custom Pattern", - "pattern": "[a-z]+_token_[0-9]+", - "slug": "example-custom-pattern", - "state": "unpublished", - "push_protection_enabled": false, - "start_delimiter": null, - "end_delimiter": null, - "must_match": null, - "must_not_match": null, - "created_at": "2024-01-15T10:30:00Z", - "updated_at": "2024-01-15T10:30:00Z" + "cvss_severities": { + "cvss_v3": { + "vector_string": "CVSS:3.1/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N", + "score": 1.6 + }, + "cvss_v4": { + "vector_string": "CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", + "score": 7.1 + } }, - { - "id": 2, - "name": "Another Custom Pattern", - "pattern": "prefix_[a-zA-Z0-9]{32}", - "slug": "another-custom-pattern", - "state": "unpublished", - "push_protection_enabled": false, - "start_delimiter": "\\b", - "end_delimiter": "\\b", - "must_match": [ - "^prefix_prod" - ], - "must_not_match": [ - "test" - ], - "created_at": "2024-01-15T10:30:00Z", - "updated_at": "2024-01-15T10:30:00Z" + "cwes": [ + { + "cwe_id": "CWE-456", + "name": "A CWE 2.0" + } + ], + "cwe_ids": [ + "CWE-456" + ], + "credits": [ + { + "login": "monauser", + "type": "reporter" + } + ], + "credits_detailed": [ + { + "user": { + "login": "monauser", + "id": 2, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/monauser", + "html_url": "https://github.com/monauser", + "followers_url": "https://api.github.com/users/monauser/followers", + "following_url": "https://api.github.com/users/monauser/following{/other_user}", + "gists_url": "https://api.github.com/users/monauser/gists{/gist_id}", + "starred_url": "https://api.github.com/users/monauser/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/monauser/subscriptions", + "organizations_url": "https://api.github.com/users/monauser/orgs", + "repos_url": "https://api.github.com/users/monauser/repos", + "events_url": "https://api.github.com/users/monauser/events{/privacy}", + "received_events_url": "https://api.github.com/users/monauser/received_events", + "type": "User", + "site_admin": false + }, + "type": "reporter", + "state": "accepted" + } + ], + "collaborating_users": [ + { + "login": "octokitten", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octokitten_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octokitten", + "html_url": "https://github.com/octokitten", + "followers_url": "https://api.github.com/users/octokitten/followers", + "following_url": "https://api.github.com/users/octokitten/following{/other_user}", + "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", + "organizations_url": "https://api.github.com/users/octokitten/orgs", + "repos_url": "https://api.github.com/users/octokitten/repos", + "events_url": "https://api.github.com/users/octokitten/events{/privacy}", + "received_events_url": "https://api.github.com/users/octokitten/received_events", + "type": "User", + "site_admin": false + } + ], + "collaborating_teams": [ + { + "name": "Justice League", + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "permission": "admin", + "parent": null + } + ], + "private_fork": { + "id": 217723378, + "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", + "name": "octo-repo-ghsa-1234-5678-9012", + "full_name": "octo-org/octo-repo-ghsa-1234-5678-9012", + "owner": { + "login": "octo-org", + "id": 6811672, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", + "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octo-org", + "html_url": "https://github.com/octo-org", + "followers_url": "https://api.github.com/users/octo-org/followers", + "following_url": "https://api.github.com/users/octo-org/following{/other_user}", + "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", + "organizations_url": "https://api.github.com/users/octo-org/orgs", + "repos_url": "https://api.github.com/users/octo-org/repos", + "events_url": "https://api.github.com/users/octo-org/events{/privacy}", + "received_events_url": "https://api.github.com/users/octo-org/received_events", + "type": "Organization", + "site_admin": false + }, + "private": true, + "html_url": "https://github.com/octo-org/octo-repo-ghsa-1234-5678-9012", + "description": null, + "fork": false, + "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012", + "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/comments{/number}", + "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/commits{/sha}", + "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/contributors", + "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/deployments", + "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/downloads", + "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/events", + "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/forks", + "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/tags{/sha}", + "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/hooks", + "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues{/number}", + "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/labels{/name}", + "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/languages", + "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/merges", + "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/pulls{/number}", + "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/releases{/id}", + "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/stargazers", + "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/subscribers", + "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/subscription", + "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/tags", + "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/teams", + "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/trees{/sha}" } - ] - } + } + ] } } } @@ -675153,32 +687139,6 @@ } } }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, "404": { "description": "Resource not found", "content": { @@ -675204,332 +687164,25 @@ } } } - }, - "422": { - "description": "Validation failed for one or more patterns.", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "message": { - "type": "string", - "description": "A summary message describing the error." - }, - "validation_errors": { - "type": "object", - "description": "A map of validation errors keyed by the zero-based index of the pattern that failed.", - "additionalProperties": { - "type": "object", - "properties": { - "errors": { - "type": "array", - "description": "List of validation errors for this pattern.", - "items": { - "title": "Secret Scanning Custom Pattern Validation Error", - "description": "A validation error for a custom pattern in a batch operation.", - "type": "object", - "properties": { - "code": { - "type": "string", - "description": "A machine-readable code describing the error.", - "enum": [ - "invalid", - "unprocessable", - "start_delimiter", - "end_delimiter", - "name", - "must_match", - "must_not_match", - "custom_pattern_version_mismatch" - ] - }, - "message": { - "type": "string", - "description": "A human-readable description of the error." - } - } - } - } - } - } - } - } - } - } - } } - } - }, - "delete": { - "summary": "Bulk delete repository custom patterns", - "description": "Bulk deletes secret scanning custom patterns for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "tags": [ - "secret-scanning" - ], - "operationId": "secret-scanning/bulk-delete-repo-custom-patterns", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#bulk-delete-repository-custom-patterns" }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "custom-patterns" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "required": [ - "patterns" - ], - "properties": { - "patterns": { - "type": "array", - "description": "The list of custom patterns to delete.", - "maxItems": 500, - "items": { - "title": "Secret Scanning Custom Pattern To Delete", - "description": "A custom pattern to delete in a bulk operation.", - "type": "object", - "required": [ - "pattern_id" - ], - "properties": { - "pattern_id": { - "type": "integer", - "description": "The ID of the custom pattern to delete." - }, - "custom_pattern_version": { - "type": [ - "string", - "null" - ], - "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." - } - } - } - }, - "post_delete_action": { - "type": "string", - "description": "What to do with alerts associated with the deleted patterns.\n`delete_alerts` permanently removes the alerts.\n`resolve_alerts` resolves the alerts as \"pattern deleted\".\nDefaults to `delete_alerts` when not specified.", - "enum": [ - "delete_alerts", - "resolve_alerts" - ], - "default": "delete_alerts" - } - } - }, - "examples": { - "default": { - "value": { - "patterns": [ - { - "pattern_id": 2, - "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K" - } - ] - } - } - } - } - } - }, - "responses": { - "204": { - "description": "All patterns deleted successfully." - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - }, - "application/scim+json": { - "schema": { - "title": "Scim Error", - "description": "Scim Error", - "type": "object", - "properties": { - "message": { - "type": [ - "string", - "null" - ] - }, - "documentation_url": { - "type": [ - "string", - "null" - ] - }, - "detail": { - "type": [ - "string", - "null" - ] - }, - "status": { - "type": "integer" - }, - "scimType": { - "type": [ - "string", - "null" - ] - }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "412": { - "description": "Precondition Failed", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - } + "category": "security-advisories", + "subcategory": "repository-advisories" } - } - }, - "/repos/{owner}/{repo}/secret-scanning/custom-patterns/{pattern_id}": { - "patch": { - "summary": "Update a repository custom pattern", - "description": "Updates a secret scanning custom pattern for a repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", + }, + "post": { + "summary": "Create a repository security advisory", + "description": "Creates a new repository security advisory.\n\nIn order to create a draft repository security advisory, the authenticated user must be a security manager or administrator of that repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", "tags": [ - "secret-scanning" + "security-advisories" ], - "operationId": "secret-scanning/update-repo-custom-pattern", + "operationId": "security-advisories/create-repository-advisory", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/custom-patterns#update-a-repository-custom-pattern" - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "custom-patterns" + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#create-a-repository-security-advisory" }, "parameters": [ { @@ -675549,15 +687202,6 @@ "schema": { "type": "string" } - }, - { - "name": "pattern_id", - "in": "path", - "required": true, - "schema": { - "type": "integer" - }, - "description": "The ID of the custom pattern." } ], "requestBody": { @@ -675565,87 +687209,260 @@ "content": { "application/json": { "schema": { - "title": "Secret Scanning Custom Pattern To Update", - "description": "Fields to update on a custom pattern. At least one updatable field (`pattern`, `start_delimiter`, `end_delimiter`, `must_match`, or `must_not_match`) must also be provided. Only provided fields will be updated.", - "required": [ - "custom_pattern_version" - ], - "anyOf": [ - { - "required": [ - "pattern" - ] - }, - { - "required": [ - "start_delimiter" - ] - }, - { - "required": [ - "end_delimiter" - ] - }, - { - "required": [ - "must_match" - ] - }, - { - "required": [ - "must_not_match" - ] - } - ], + "type": "object", "properties": { - "pattern": { + "summary": { "type": "string", - "description": "The updated regular expression of the custom pattern." + "description": "A short summary of the advisory.", + "maxLength": 1024 }, - "start_delimiter": { + "description": { "type": "string", - "description": "The updated start delimiter regex for the custom pattern." + "description": "A detailed description of what the advisory impacts.", + "maxLength": 65535 }, - "end_delimiter": { - "type": "string", - "description": "The updated end delimiter regex for the custom pattern." + "cve_id": { + "type": [ + "string", + "null" + ], + "description": "The Common Vulnerabilities and Exposures (CVE) ID." }, - "must_match": { + "vulnerabilities": { "type": "array", - "description": "Updated list of regexes that the secret must match.", + "description": "A product affected by the vulnerability detailed in a repository security advisory.", "items": { - "type": "string" + "type": "object", + "properties": { + "package": { + "description": "The name of the package affected by the vulnerability.", + "type": "object", + "properties": { + "ecosystem": { + "type": "string", + "description": "The package's language or package management ecosystem.", + "enum": [ + "rubygems", + "npm", + "pip", + "maven", + "nuget", + "composer", + "go", + "rust", + "erlang", + "actions", + "pub", + "other", + "swift" + ] + }, + "name": { + "type": [ + "string", + "null" + ], + "description": "The unique package name within its ecosystem." + } + }, + "required": [ + "ecosystem" + ] + }, + "vulnerable_version_range": { + "type": [ + "string", + "null" + ], + "description": "The range of the package versions affected by the vulnerability." + }, + "patched_versions": { + "type": [ + "string", + "null" + ], + "description": "The package version(s) that resolve the vulnerability." + }, + "vulnerable_functions": { + "type": [ + "array", + "null" + ], + "description": "The functions in the package that are affected.", + "items": { + "type": "string" + } + } + }, + "required": [ + "package" + ], + "additionalProperties": false } }, - "must_not_match": { - "type": "array", - "description": "Updated list of regexes that the secret must not match.", + "cwe_ids": { + "type": [ + "array", + "null" + ], + "description": "A list of Common Weakness Enumeration (CWE) IDs.", "items": { "type": "string" } }, - "custom_pattern_version": { + "credits": { + "type": [ + "array", + "null" + ], + "description": "A list of users receiving credit for their participation in the security advisory.", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string", + "description": "The username of the user credited." + }, + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + } + }, + "required": [ + "login", + "type" + ], + "additionalProperties": false + } + }, + "severity": { "type": [ "string", "null" ], - "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." + "description": "The severity of the advisory. You must choose between setting this field or `cvss_vector_string`.", + "enum": [ + "critical", + "high", + "medium", + "low", + null + ] + }, + "cvss_vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS vector that calculates the severity of the advisory. You must choose between setting this field or `severity`." + }, + "start_private_fork": { + "type": "boolean", + "description": "Whether to create a temporary private fork of the repository to collaborate on a fix.", + "default": false } - } + }, + "required": [ + "summary", + "description", + "vulnerabilities" + ], + "additionalProperties": false }, "examples": { "default": { "value": { - "pattern": "updated_secret_[0-9A-Z]{16}", - "start_delimiter": "[^0-9A-Za-z]", - "end_delimiter": "[^0-9A-Za-z]", - "must_match": [ - "updated_secret_[0-9]{2}*" + "summary": "A new important advisory", + "description": "A more in-depth description of what the problem is.", + "severity": "high", + "cve_id": null, + "vulnerabilities": [ + { + "package": { + "name": "a-package", + "ecosystem": "npm" + }, + "vulnerable_version_range": "< 1.0.0", + "patched_versions": "1.0.0", + "vulnerable_functions": [ + "important_function" + ] + } ], - "must_not_match": [ - "updated_secret_1234567890ABCDEF" + "cwe_ids": [ + "CWE-1101", + "CWE-20" ], - "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K" + "credits": [ + { + "login": "monalisa", + "type": "reporter" + }, + { + "login": "octocat", + "type": "analyst" + } + ] + } + }, + "withVectorString": { + "value": { + "summary": "A new important advisory", + "description": "A more in-depth description of what the problem is.", + "cvss_vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L", + "cve_id": null, + "vulnerabilities": [ + { + "package": { + "name": "a-package", + "ecosystem": "npm" + }, + "vulnerable_version_range": "< 1.0.0", + "patched_versions": "1.0.0", + "vulnerable_functions": [ + "important_function" + ] + } + ], + "cwe_ids": [ + "CWE-1101", + "CWE-20" + ], + "credits": [ + { + "login": "monalisa", + "type": "reporter" + }, + { + "login": "octocat", + "type": "analyst" + } + ] + } + }, + "minimal": { + "value": { + "summary": "A new important advisory", + "description": "A more in-depth description of what the problem is.", + "vulnerabilities": [ + { + "package": { + "ecosystem": "npm" + } + } + ] } } } @@ -675653,191 +687470,2230 @@ } }, "responses": { - "200": { - "description": "Pattern updated successfully.", + "201": { + "description": "Response", "content": { "application/json": { "schema": { - "title": "Secret Scanning Custom Pattern", - "description": "A custom pattern for secret scanning.", + "description": "A repository security advisory.", "type": "object", "properties": { - "id": { - "type": "integer", - "description": "The ID of the custom pattern." + "ghsa_id": { + "type": "string", + "description": "The GitHub Security Advisory ID.", + "readOnly": true }, - "name": { + "cve_id": { + "type": [ + "string", + "null" + ], + "description": "The Common Vulnerabilities and Exposures (CVE) ID." + }, + "url": { "type": "string", - "description": "The name of the custom pattern." + "format": "uri", + "description": "The API URL for the advisory.", + "readOnly": true }, - "pattern": { + "html_url": { "type": "string", - "description": "The regular expression of the custom pattern." + "format": "uri", + "description": "The URL for the advisory.", + "readOnly": true }, - "slug": { + "summary": { "type": "string", - "description": "A URL-friendly identifier for the custom pattern, derived from its name." + "description": "A short summary of the advisory.", + "maxLength": 1024 + }, + "description": { + "type": [ + "string", + "null" + ], + "description": "A detailed description of what the advisory entails.", + "maxLength": 65535 + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the advisory.", + "enum": [ + "critical", + "high", + "medium", + "low", + null + ] + }, + "author": { + "readOnly": true, + "description": "The author of the advisory.", + "allOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ], + "type": [ + "null" + ] + }, + "publisher": { + "readOnly": true, + "description": "The publisher of the advisory.", + "allOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ], + "type": [ + "null" + ] + }, + "identifiers": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of identifier.", + "enum": [ + "CVE", + "GHSA" + ] + }, + "value": { + "type": "string", + "description": "The identifier value." + } + }, + "required": [ + "type", + "value" + ] + }, + "readOnly": true }, "state": { "type": "string", - "description": "The state of the custom pattern.", + "description": "The state of the advisory.", "enum": [ "published", - "unpublished" + "closed", + "withdrawn", + "draft", + "triage" ] }, - "push_protection_enabled": { - "type": "boolean", - "description": "Whether push protection is enabled for this custom pattern." + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was created, in ISO 8601 format.", + "readOnly": true + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was last updated, in ISO 8601 format.", + "readOnly": true + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was published, in ISO 8601 format.", + "readOnly": true + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was closed, in ISO 8601 format.", + "readOnly": true + }, + "withdrawn_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was withdrawn, in ISO 8601 format.", + "readOnly": true + }, + "submission": { + "type": [ + "object", + "null" + ], + "readOnly": true, + "properties": { + "accepted": { + "type": "boolean", + "description": "Whether a private vulnerability report was accepted by the repository's administrators.", + "readOnly": true + } + }, + "required": [ + "accepted" + ] + }, + "vulnerabilities": { + "type": [ + "array", + "null" + ], + "items": { + "description": "A product affected by the vulnerability detailed in a repository security advisory.", + "type": "object", + "properties": { + "package": { + "description": "The name of the package affected by the vulnerability.", + "type": [ + "object", + "null" + ], + "properties": { + "ecosystem": { + "type": "string", + "description": "The package's language or package management ecosystem.", + "enum": [ + "rubygems", + "npm", + "pip", + "maven", + "nuget", + "composer", + "go", + "rust", + "erlang", + "actions", + "pub", + "other", + "swift" + ] + }, + "name": { + "type": [ + "string", + "null" + ], + "description": "The unique package name within its ecosystem." + } + }, + "required": [ + "ecosystem", + "name" + ] + }, + "vulnerable_version_range": { + "type": [ + "string", + "null" + ], + "description": "The range of the package versions affected by the vulnerability." + }, + "patched_versions": { + "type": [ + "string", + "null" + ], + "description": "The package version(s) that resolve the vulnerability." + }, + "vulnerable_functions": { + "type": [ + "array", + "null" + ], + "description": "The functions in the package that are affected.", + "items": { + "type": "string" + } + } + }, + "required": [ + "package", + "vulnerable_version_range", + "patched_versions", + "vulnerable_functions" + ], + "additionalProperties": false + } + }, + "cvss_severities": { + "type": [ + "object", + "null" + ], + "properties": { + "cvss_v3": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS 3 vector string." + }, + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS 3 score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } + }, + "required": [ + "vector_string", + "score" + ] + }, + "cvss_v4": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS 4 vector string." + }, + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS 4 score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } + }, + "required": [ + "vector_string", + "score" + ] + } + } + }, + "cwes": { + "type": [ + "array", + "null" + ], + "items": { + "type": "object", + "properties": { + "cwe_id": { + "type": "string", + "description": "The Common Weakness Enumeration (CWE) identifier." + }, + "name": { + "type": "string", + "description": "The name of the CWE.", + "readOnly": true + } + }, + "required": [ + "cwe_id", + "name" + ] + }, + "readOnly": true + }, + "cwe_ids": { + "type": [ + "array", + "null" + ], + "description": "A list of only the CWE IDs.", + "items": { + "type": "string" + } + }, + "credits": { + "type": [ + "array", + "null" + ], + "items": { + "type": "object", + "properties": { + "login": { + "type": "string", + "description": "The username of the user credited." + }, + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + } + } + } }, - "start_delimiter": { + "credits_detailed": { "type": [ - "string", + "array", "null" ], - "description": "The start delimiter regex for the custom pattern." + "items": { + "description": "A credit given to a user for a repository security advisory.", + "type": "object", + "properties": { + "user": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + }, + "state": { + "type": "string", + "description": "The state of the user's acceptance of the credit.", + "enum": [ + "accepted", + "declined", + "pending" + ] + } + }, + "required": [ + "user", + "type", + "state" + ], + "additionalProperties": false + }, + "readOnly": true }, - "end_delimiter": { + "collaborating_users": { "type": [ - "string", + "array", "null" ], - "description": "The end delimiter regex for the custom pattern." + "description": "A list of users that collaborate on the advisory.", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } }, - "must_match": { + "collaborating_teams": { "type": [ "array", "null" ], - "description": "List of regexes that the secret must match.", + "description": "A list of teams that collaborate on the advisory.", "items": { - "type": "string" + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" + ], + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] } }, - "must_not_match": { - "type": [ - "array", - "null" + "private_fork": { + "readOnly": true, + "description": "A temporary private fork of the advisory's repository for collaborating on a fix.", + "allOf": [ + { + "title": "Simple Repository", + "description": "A GitHub repository.", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64", + "description": "A unique identifier of the repository.", + "examples": [ + 1296269 + ] + }, + "node_id": { + "type": "string", + "description": "The GraphQL identifier of the repository.", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "type": "string", + "description": "The name of the repository.", + "examples": [ + "Hello-World" + ] + }, + "full_name": { + "type": "string", + "description": "The full, globally unique, name of the repository.", + "examples": [ + "octocat/Hello-World" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "type": "boolean", + "description": "Whether the repository is private." + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The URL to view the repository on GitHub.com.", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "description": "The repository description.", + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean", + "description": "Whether the repository is a fork." + }, + "url": { + "type": "string", + "format": "uri", + "description": "The URL to get more information about the repository from the GitHub API.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "description": "A template for the API URL to download the repository as an archive.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "description": "A template for the API URL to list the available assignees for issues in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "description": "A template for the API URL to create or retrieve a raw Git blob in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "description": "A template for the API URL to get information about branches in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "description": "A template for the API URL to get information about collaborators of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "description": "A template for the API URL to get information about comments on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "description": "A template for the API URL to get information about commits on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "description": "A template for the API URL to compare two commits or refs.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "description": "A template for the API URL to get the contents of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "description": "A template for the API URL to list the contributors to the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the deployments of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the downloads on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the events of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the forks of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "description": "A template for the API URL to get information about Git commits of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "description": "A template for the API URL to get information about Git refs of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "description": "A template for the API URL to get information about Git tags of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "issue_comment_url": { + "type": "string", + "description": "A template for the API URL to get information about issue comments on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "description": "A template for the API URL to get information about issue events on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "description": "A template for the API URL to get information about issues on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "description": "A template for the API URL to get information about deploy keys on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "description": "A template for the API URL to get information about labels of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get information about the languages of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "description": "The API URL to merge branches in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "description": "A template for the API URL to get information about milestones of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "description": "A template for the API URL to get information about notifications on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "description": "A template for the API URL to get information about pull requests on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "description": "A template for the API URL to get information about releases on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the stargazers on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "description": "A template for the API URL to get information about statuses of a commit.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the subscribers on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "description": "The API URL to subscribe to notifications for this repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get information about tags on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the teams on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "description": "A template for the API URL to create or retrieve a raw Git tree of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the hooks on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/hooks" + ] + } + }, + "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" + ] + } ], - "description": "List of regexes that the secret must not match.", - "items": { - "type": "string" - } - }, - "custom_pattern_version": { "type": [ - "string", "null" - ], - "description": "The version of the entity. This is used to confirm you're updating the current version of the entity and mitigate unintentionally overriding someone else's update." - }, - "created_at": { - "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was created in ISO 8601 format." - }, - "updated_at": { - "type": "string", - "format": "date-time", - "description": "The date and time the custom pattern was last updated in ISO 8601 format." + ] } }, "required": [ - "id", - "name", - "pattern", - "slug", + "ghsa_id", + "cve_id", + "url", + "html_url", + "summary", + "description", + "severity", + "author", + "publisher", + "identifiers", "state", - "push_protection_enabled" - ] + "created_at", + "updated_at", + "published_at", + "closed_at", + "withdrawn_at", + "submission", + "vulnerabilities", + "cwes", + "cwe_ids", + "credits", + "credits_detailed", + "collaborating_users", + "collaborating_teams", + "private_fork" + ], + "additionalProperties": false }, "examples": { "default": { "value": { - "id": 1, - "name": "Example Custom Pattern", - "pattern": "updated_secret_[0-9A-Z]{16}", - "slug": "example_custom_pattern", + "ghsa_id": "GHSA-abcd-1234-efgh", + "cve_id": "CVE-2050-00000", + "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", + "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", + "summary": "A short summary of the advisory.", + "description": "A detailed description of what the advisory entails.", + "severity": "critical", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "publisher": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "identifiers": [ + { + "type": "GHSA", + "value": "GHSA-abcd-1234-efgh" + }, + { + "type": "CVE", + "value": "CVE-2050-00000" + } + ], "state": "published", - "push_protection_enabled": true, - "start_delimiter": "[^0-9A-Za-z]", - "end_delimiter": "[^0-9A-Za-z]", - "must_match": [ - "updated_secret_[0-9]{2}*" + "created_at": "2020-01-01T00:00:00Z", + "updated_at": "2020-01-02T00:00:00Z", + "published_at": "2020-01-03T00:00:00Z", + "closed_at": null, + "withdrawn_at": null, + "submission": null, + "vulnerabilities": [ + { + "package": { + "ecosystem": "pip", + "name": "a-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", + "vulnerable_functions": [ + "function1" + ] + }, + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" + ] + } ], - "must_not_match": [ - "updated_secret_1234567890ABCDEF" + "cvss_severities": { + "cvss_v3": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 + }, + "cvss_v4": { + "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", + "score": 9.3 + } + }, + "cwes": [ + { + "cwe_id": "CWE-123", + "name": "A CWE" + } ], - "custom_pattern_version": "0ujsswThIGTUYm2K8FjOOfXtY1K", - "created_at": "2024-01-15T10:30:00Z", - "updated_at": "2024-06-01T12:00:00Z" - } - } - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - }, - "application/scim+json": { - "schema": { - "title": "Scim Error", - "description": "Scim Error", - "type": "object", - "properties": { - "message": { - "type": [ - "string", - "null" - ] - }, - "documentation_url": { - "type": [ - "string", - "null" - ] - }, - "detail": { - "type": [ - "string", - "null" - ] - }, - "status": { - "type": "integer" - }, - "scimType": { - "type": [ - "string", - "null" - ] - }, - "schemas": { - "type": "array", - "items": { - "type": "string" + "cwe_ids": [ + "CWE-123" + ], + "credits": [ + { + "login": "octocat", + "type": "analyst" + } + ], + "credits_detailed": [ + { + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "type": "analyst", + "state": "accepted" + } + ], + "collaborating_users": [ + { + "login": "octokitten", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octokitten_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octokitten", + "html_url": "https://github.com/octokitten", + "followers_url": "https://api.github.com/users/octokitten/followers", + "following_url": "https://api.github.com/users/octokitten/following{/other_user}", + "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", + "organizations_url": "https://api.github.com/users/octokitten/orgs", + "repos_url": "https://api.github.com/users/octokitten/repos", + "events_url": "https://api.github.com/users/octokitten/events{/privacy}", + "received_events_url": "https://api.github.com/users/octokitten/received_events", + "type": "User", + "site_admin": false + } + ], + "collaborating_teams": [ + { + "name": "Justice League", + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "permission": "admin", + "parent": null + } + ], + "private_fork": { + "id": 217723378, + "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", + "name": "octo-repo-ghsa-abcd-1234-efgh", + "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", + "owner": { + "login": "octo-org", + "id": 6811672, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", + "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octo-org", + "html_url": "https://github.com/octo-org", + "followers_url": "https://api.github.com/users/octo-org/followers", + "following_url": "https://api.github.com/users/octo-org/following{/other_user}", + "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", + "organizations_url": "https://api.github.com/users/octo-org/orgs", + "repos_url": "https://api.github.com/users/octo-org/repos", + "events_url": "https://api.github.com/users/octo-org/events{/privacy}", + "received_events_url": "https://api.github.com/users/octo-org/received_events", + "type": "Organization", + "site_admin": false + }, + "private": true, + "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "description": null, + "fork": false, + "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", + "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", + "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", + "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", + "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", + "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", + "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", + "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", + "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", + "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", + "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", + "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", + "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", + "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", + "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", + "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", + "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", + "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", + "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", + "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", + "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" } } } @@ -675897,32 +689753,6 @@ } } }, - "412": { - "description": "Precondition Failed", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, "422": { "description": "Validation failed, or the endpoint has been spammed.", "content": { @@ -675962,510 +689792,38 @@ "code": { "type": "string" }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } - } - } - } - }, - "/repos/{owner}/{repo}/secret-scanning/push-protection-bypasses": { - "post": { - "summary": "Create a push protection bypass", - "description": "Creates a bypass for a previously push protected secret.\n\nThe authenticated user must be the original author of the committed secret.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` scope to use this endpoint.", - "operationId": "secret-scanning/create-push-protection-bypass", - "tags": [ - "secret-scanning" - ], - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#create-a-push-protection-bypass" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "reason": { - "description": "The reason for bypassing push protection.", - "type": "string", - "enum": [ - "false_positive", - "used_in_tests", - "will_fix_later" - ] - }, - "placeholder_id": { - "description": "The ID of the push protection bypass placeholder. This value is returned on any push protected routes.", - "type": "string" - } - }, - "required": [ - "reason", - "placeholder_id" - ] - }, - "examples": { - "default": { - "value": { - "reason": "will_fix_later", - "placeholder_id": "2k4dM4tseyC5lPIsjl5emX9sPNk" - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "reason": { - "description": "The reason for bypassing push protection.", - "type": "string", - "enum": [ - "false_positive", - "used_in_tests", - "will_fix_later" - ] - }, - "expire_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the bypass will expire in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`." - }, - "token_type": { - "type": "string", - "description": "The token type this bypass is for." - } - } - }, - "examples": { - "default": { - "value": { - "reason": "will_fix_later", - "expire_at": "2020-11-06T18:18:30Z", - "token_type": "mailchimp_api_key" - } - } - } - } - } - }, - "403": { - "description": "User does not have enough permissions to perform this action." - }, - "404": { - "description": "Placeholder ID not found, or push protection is disabled on this repository." - }, - "422": { - "description": "Bad request, input data missing or incorrect." - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "enabledForGitHubApps": true, - "githubCloudOnly": false, - "category": "secret-scanning", - "subcategory": "secret-scanning" - } - } - }, - "/repos/{owner}/{repo}/secret-scanning/scan-history": { - "get": { - "summary": "Get secret scanning scan history for a repository", - "description": "Lists the latest default incremental and backfill scans by type for a repository.\n\n> [!NOTE]\n> This endpoint requires [GitHub Advanced Security](https://docs.github.com/get-started/learning-about-github/about-github-advanced-security).\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `security_events` scope to use this endpoint. If this endpoint is only used with public repositories, the token can use the `public_repo` scope instead.", - "tags": [ - "secret-scanning" - ], - "operationId": "secret-scanning/get-scan-history", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/secret-scanning/secret-scanning#get-secret-scanning-scan-history-for-a-repository" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "404": { - "description": "Repository does not have GitHub Advanced Security or secret scanning enabled" - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - }, - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "incremental_scans": { - "type": "array", - "items": { - "description": "Information on a single scan performed by secret scanning on the repository", - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of scan" - }, - "status": { - "type": "string", - "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." - }, - "completed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was completed. Empty if the scan is running" - }, - "started_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was started. Empty if the scan is pending" - } - } - } - }, - "pattern_update_scans": { - "type": "array", - "items": { - "description": "Information on a single scan performed by secret scanning on the repository", - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of scan" - }, - "status": { - "type": "string", - "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." - }, - "completed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was completed. Empty if the scan is running" - }, - "started_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was started. Empty if the scan is pending" - } - } - } - }, - "backfill_scans": { - "type": "array", - "items": { - "description": "Information on a single scan performed by secret scanning on the repository", - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of scan" - }, - "status": { - "type": "string", - "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." - }, - "completed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was completed. Empty if the scan is running" - }, - "started_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was started. Empty if the scan is pending" - } - } - } - }, - "custom_pattern_backfill_scans": { - "type": "array", - "items": { - "allOf": [ - { - "description": "Information on a single scan performed by secret scanning on the repository", - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of scan" - }, - "status": { - "type": "string", - "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." - }, - "completed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was completed. Empty if the scan is running" - }, - "started_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was started. Empty if the scan is pending" - } - } - }, - { - "type": "object", - "properties": { - "pattern_name": { - "type": "string", - "description": "Name of the custom pattern for custom pattern scans" - }, - "pattern_scope": { - "type": "string", - "description": "Level at which the custom pattern is defined, one of \"repository\", \"organization\", or \"enterprise\"" - } - } - } - ] - } - }, - "generic_secrets_backfill_scans": { - "type": "array", - "items": { - "description": "Information on a single scan performed by secret scanning on the repository", - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of scan" - }, - "status": { - "type": "string", - "description": "The state of the scan. Either \"completed\", \"running\", \"pending\", \"failed\", or \"unknown\".\n\n\"failed\": this scan type has hit its retry limit and has been marked permanently failed.\nThis usually resolves on its own at the next scheduled scan attempt. If \"failed\" persists, contact Support.\n\n\"unknown\": the scan is in an unrecognized or currently unhandled state." - }, - "completed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was completed. Empty if the scan is running" - }, - "started_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The time that the scan was started. Empty if the scan is pending" + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] } } } } } - }, - "examples": { - "default": { - "value": { - "incremental_scans": [ - { - "type": "git", - "status": "completed", - "completed_at": "2024-10-07T02:47:00Z" - } - ], - "backfill_scans": [ - { - "type": "git", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:50:00Z" - }, - { - "type": "issue", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:49:00Z" - }, - { - "type": "discussion", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:48:00Z" - } - ], - "pattern_update_scans": [ - { - "type": "discussion", - "status": "in_progress", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:51:00Z" - } - ], - "custom_pattern_backfill_scans": [ - { - "type": "git", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:55:00Z", - "pattern_slug": "my-custom-pattern", - "pattern_scope": "enterprise" - }, - { - "type": "git", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:55:00Z", - "pattern_slug": "my-custom-pattern", - "pattern_scope": "organization" - } - ], - "generic_secrets_backfill_scans": [ - { - "type": "git", - "status": "completed", - "started_at": "2024-10-07T02:47:00Z", - "completed_at": "2024-10-07T02:55:00Z" - } - ] - } - } } } } @@ -676474,22 +689832,22 @@ "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "secret-scanning", - "subcategory": "secret-scanning" + "category": "security-advisories", + "subcategory": "repository-advisories" } } }, - "/repos/{owner}/{repo}/security-advisories": { - "get": { - "summary": "List repository security advisories", - "description": "Lists security advisories in a repository.\n\nThe authenticated user can access unpublished security advisories from a repository if they are a security manager or administrator of that repository, or if they are a collaborator on any security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:read` scope to to get a published security advisory in a private repository, or any unpublished security advisory that the authenticated user has access to.", + "/repos/{owner}/{repo}/security-advisories/reports": { + "post": { + "summary": "Privately report a security vulnerability", + "description": "Report a security vulnerability to the maintainers of the repository.\nSee \"[Privately reporting a security vulnerability](https://docs.github.com/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability)\" for more information about private vulnerability reporting.", "tags": [ "security-advisories" ], - "operationId": "security-advisories/list-repository-advisories", + "operationId": "security-advisories/create-private-vulnerability-report", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#list-repository-security-advisories" + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#privately-report-a-security-vulnerability" }, "parameters": [ { @@ -676509,326 +689867,907 @@ "schema": { "type": "string" } - }, - { - "name": "direction", - "description": "The direction to sort the results by.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "asc", - "desc" - ], - "default": "desc" - } - }, - { - "name": "sort", - "description": "The property to sort the results by.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "created", - "updated", - "published" - ], - "default": "created" - } - }, - { - "name": "before", - "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for results before this cursor. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "after", - "description": "A cursor, as given in the [Link header](https://docs.github.com/rest/guides/using-pagination-in-the-rest-api#using-link-headers). If specified, the query only searches for results after this cursor. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "required": false, - "schema": { - "type": "string" - } - }, - { - "name": "per_page", - "description": "The number of advisories to return per page. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", - "in": "query", - "required": false, - "schema": { - "type": "integer", - "minimum": 1, - "maximum": 100, - "default": 30 - } - }, - { - "name": "state", - "description": "Filter by state of the repository advisories. Only advisories of this state will be returned.", - "in": "query", - "required": false, - "schema": { - "type": "string", - "enum": [ - "triage", - "draft", - "published", - "closed" - ] - } } ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "summary": { + "type": "string", + "description": "A short summary of the advisory.", + "maxLength": 1024 + }, + "description": { + "type": "string", + "description": "A detailed description of what the advisory impacts.", + "maxLength": 65535 + }, + "vulnerabilities": { + "type": [ + "array", + "null" + ], + "description": "An array of products affected by the vulnerability detailed in a repository security advisory.", + "items": { + "type": "object", + "properties": { + "package": { + "description": "The name of the package affected by the vulnerability.", + "type": "object", + "properties": { + "ecosystem": { + "type": "string", + "description": "The package's language or package management ecosystem.", + "enum": [ + "rubygems", + "npm", + "pip", + "maven", + "nuget", + "composer", + "go", + "rust", + "erlang", + "actions", + "pub", + "other", + "swift" + ] + }, + "name": { + "type": [ + "string", + "null" + ], + "description": "The unique package name within its ecosystem." + } + }, + "required": [ + "ecosystem" + ] + }, + "vulnerable_version_range": { + "type": [ + "string", + "null" + ], + "description": "The range of the package versions affected by the vulnerability." + }, + "patched_versions": { + "type": [ + "string", + "null" + ], + "description": "The package version(s) that resolve the vulnerability." + }, + "vulnerable_functions": { + "type": [ + "array", + "null" + ], + "description": "The functions in the package that are affected.", + "items": { + "type": "string" + } + } + }, + "required": [ + "package" + ], + "additionalProperties": false + } + }, + "cwe_ids": { + "type": [ + "array", + "null" + ], + "description": "A list of Common Weakness Enumeration (CWE) IDs.", + "items": { + "type": "string" + } + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the advisory. You must choose between setting this field or `cvss_vector_string`.", + "enum": [ + "critical", + "high", + "medium", + "low", + null + ] + }, + "cvss_vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS vector that calculates the severity of the advisory. You must choose between setting this field or `severity`." + }, + "start_private_fork": { + "type": "boolean", + "description": "Whether to create a temporary private fork of the repository to collaborate on a fix.", + "default": false + } + }, + "required": [ + "summary", + "description" + ], + "additionalProperties": false + }, + "examples": { + "default": { + "value": { + "summary": "A newly discovered vulnerability", + "description": "A more in-depth description of what the problem is.", + "severity": "high", + "vulnerabilities": [ + { + "package": { + "name": "a-package", + "ecosystem": "npm" + }, + "vulnerable_version_range": "< 1.0.0", + "patched_versions": "1.0.0", + "vulnerable_functions": [ + "important_function" + ] + } + ], + "cwe_ids": [ + "CWE-123" + ] + } + } + } + } + } + }, "responses": { - "200": { + "201": { "description": "Response", "content": { "application/json": { "schema": { - "type": "array", - "items": { - "description": "A repository security advisory.", - "type": "object", - "properties": { - "ghsa_id": { - "type": "string", - "description": "The GitHub Security Advisory ID.", - "readOnly": true - }, - "cve_id": { - "type": [ - "string", - "null" - ], - "description": "The Common Vulnerabilities and Exposures (CVE) ID." - }, - "url": { - "type": "string", - "format": "uri", - "description": "The API URL for the advisory.", - "readOnly": true - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The URL for the advisory.", - "readOnly": true - }, - "summary": { - "type": "string", - "description": "A short summary of the advisory.", - "maxLength": 1024 - }, - "description": { - "type": [ - "string", - "null" - ], - "description": "A detailed description of what the advisory entails.", - "maxLength": 65535 - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the advisory.", - "enum": [ - "critical", - "high", - "medium", - "low", - null + "description": "A repository security advisory.", + "type": "object", + "properties": { + "ghsa_id": { + "type": "string", + "description": "The GitHub Security Advisory ID.", + "readOnly": true + }, + "cve_id": { + "type": [ + "string", + "null" + ], + "description": "The Common Vulnerabilities and Exposures (CVE) ID." + }, + "url": { + "type": "string", + "format": "uri", + "description": "The API URL for the advisory.", + "readOnly": true + }, + "html_url": { + "type": "string", + "format": "uri", + "description": "The URL for the advisory.", + "readOnly": true + }, + "summary": { + "type": "string", + "description": "A short summary of the advisory.", + "maxLength": 1024 + }, + "description": { + "type": [ + "string", + "null" + ], + "description": "A detailed description of what the advisory entails.", + "maxLength": 65535 + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the advisory.", + "enum": [ + "critical", + "high", + "medium", + "low", + null + ] + }, + "author": { + "readOnly": true, + "description": "The author of the advisory.", + "allOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ], + "type": [ + "null" + ] + }, + "publisher": { + "readOnly": true, + "description": "The publisher of the advisory.", + "allOf": [ + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ], + "type": [ + "null" + ] + }, + "identifiers": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The type of identifier.", + "enum": [ + "CVE", + "GHSA" + ] + }, + "value": { + "type": "string", + "description": "The identifier value." + } + }, + "required": [ + "type", + "value" ] }, - "author": { - "readOnly": true, - "description": "The author of the advisory.", - "allOf": [ - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { + "readOnly": true + }, + "state": { + "type": "string", + "description": "The state of the advisory.", + "enum": [ + "published", + "closed", + "withdrawn", + "draft", + "triage" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was created, in ISO 8601 format.", + "readOnly": true + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was last updated, in ISO 8601 format.", + "readOnly": true + }, + "published_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was published, in ISO 8601 format.", + "readOnly": true + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was closed, in ISO 8601 format.", + "readOnly": true + }, + "withdrawn_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "description": "The date and time of when the advisory was withdrawn, in ISO 8601 format.", + "readOnly": true + }, + "submission": { + "type": [ + "object", + "null" + ], + "readOnly": true, + "properties": { + "accepted": { + "type": "boolean", + "description": "Whether a private vulnerability report was accepted by the repository's administrators.", + "readOnly": true + } + }, + "required": [ + "accepted" + ] + }, + "vulnerabilities": { + "type": [ + "array", + "null" + ], + "items": { + "description": "A product affected by the vulnerability detailed in a repository security advisory.", + "type": "object", + "properties": { + "package": { + "description": "The name of the package affected by the vulnerability.", + "type": [ + "object", + "null" + ], + "properties": { + "ecosystem": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" + "description": "The package's language or package management ecosystem.", + "enum": [ + "rubygems", + "npm", + "pip", + "maven", + "nuget", + "composer", + "go", + "rust", + "erlang", + "actions", + "pub", + "other", + "swift" ] }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "name": { + "type": [ + "string", + "null" + ], + "description": "The unique package name within its ecosystem." } }, "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" + "ecosystem", + "name" ] + }, + "vulnerable_version_range": { + "type": [ + "string", + "null" + ], + "description": "The range of the package versions affected by the vulnerability." + }, + "patched_versions": { + "type": [ + "string", + "null" + ], + "description": "The package version(s) that resolve the vulnerability." + }, + "vulnerable_functions": { + "type": [ + "array", + "null" + ], + "description": "The functions in the package that are affected.", + "items": { + "type": "string" + } } + }, + "required": [ + "package", + "vulnerable_version_range", + "patched_versions", + "vulnerable_functions" ], - "type": [ - "null" + "additionalProperties": false + } + }, + "cvss_severities": { + "type": [ + "object", + "null" + ], + "properties": { + "cvss_v3": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS 3 vector string." + }, + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS 3 score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } + }, + "required": [ + "vector_string", + "score" + ] + }, + "cvss_v4": { + "type": [ + "object", + "null" + ], + "properties": { + "vector_string": { + "type": [ + "string", + "null" + ], + "description": "The CVSS 4 vector string." + }, + "score": { + "type": [ + "number", + "null" + ], + "description": "The CVSS 4 score.", + "minimum": 0, + "maximum": 10, + "readOnly": true + } + }, + "required": [ + "vector_string", + "score" + ] + } + } + }, + "cwes": { + "type": [ + "array", + "null" + ], + "items": { + "type": "object", + "properties": { + "cwe_id": { + "type": "string", + "description": "The Common Weakness Enumeration (CWE) identifier." + }, + "name": { + "type": "string", + "description": "The name of the CWE.", + "readOnly": true + } + }, + "required": [ + "cwe_id", + "name" ] }, - "publisher": { - "readOnly": true, - "description": "The publisher of the advisory.", - "allOf": [ - { + "readOnly": true + }, + "cwe_ids": { + "type": [ + "array", + "null" + ], + "description": "A list of only the CWE IDs.", + "items": { + "type": "string" + } + }, + "credits": { + "type": [ + "array", + "null" + ], + "items": { + "type": "object", + "properties": { + "login": { + "type": "string", + "description": "The username of the user credited." + }, + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + } + } + } + }, + "credits_detailed": { + "type": [ + "array", + "null" + ], + "items": { + "description": "A credit given to a user for a repository security advisory.", + "type": "object", + "properties": { + "user": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -676995,334 +690934,531 @@ "type", "url" ] - } - ], - "type": [ - "null" - ] - }, - "identifiers": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of identifier.", - "enum": [ - "CVE", - "GHSA" - ] - }, - "value": { - "type": "string", - "description": "The identifier value." - } }, - "required": [ - "type", - "value" - ] + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + }, + "state": { + "type": "string", + "description": "The state of the user's acceptance of the credit.", + "enum": [ + "accepted", + "declined", + "pending" + ] + } }, - "readOnly": true - }, - "state": { - "type": "string", - "description": "The state of the advisory.", - "enum": [ - "published", - "closed", - "withdrawn", - "draft", - "triage" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was created, in ISO 8601 format.", - "readOnly": true - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was last updated, in ISO 8601 format.", - "readOnly": true - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was published, in ISO 8601 format.", - "readOnly": true - }, - "closed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was closed, in ISO 8601 format.", - "readOnly": true - }, - "withdrawn_at": { - "type": [ - "string", - "null" + "required": [ + "user", + "type", + "state" ], - "format": "date-time", - "description": "The date and time of when the advisory was withdrawn, in ISO 8601 format.", - "readOnly": true + "additionalProperties": false }, - "submission": { - "type": [ - "object", - "null" - ], - "readOnly": true, + "readOnly": true + }, + "collaborating_users": { + "type": [ + "array", + "null" + ], + "description": "A list of users that collaborate on the advisory.", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", "properties": { - "accepted": { - "type": "boolean", - "description": "Whether a private vulnerability report was accepted by the repository's administrators.", - "readOnly": true + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } }, "required": [ - "accepted" + "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" ] - }, - "vulnerabilities": { - "type": [ - "array", - "null" - ], - "items": { - "description": "A product affected by the vulnerability detailed in a repository security advisory.", - "type": "object", - "properties": { - "package": { - "description": "The name of the package affected by the vulnerability.", - "type": [ - "object", - "null" - ], - "properties": { - "ecosystem": { - "type": "string", - "description": "The package's language or package management ecosystem.", - "enum": [ - "rubygems", - "npm", - "pip", - "maven", - "nuget", - "composer", - "go", - "rust", - "erlang", - "actions", - "pub", - "other", - "swift" - ] - }, - "name": { - "type": [ - "string", - "null" - ], - "description": "The unique package name within its ecosystem." - } - }, - "required": [ - "ecosystem", - "name" - ] - }, - "vulnerable_version_range": { - "type": [ - "string", - "null" - ], - "description": "The range of the package versions affected by the vulnerability." - }, - "patched_versions": { - "type": [ - "string", - "null" - ], - "description": "The package version(s) that resolve the vulnerability." - }, - "vulnerable_functions": { - "type": [ - "array", - "null" - ], - "description": "The functions in the package that are affected.", - "items": { - "type": "string" - } - } - }, - "required": [ - "package", - "vulnerable_version_range", - "patched_versions", - "vulnerable_functions" - ], - "additionalProperties": false - } - }, - "cvss_severities": { - "type": [ - "object", - "null" - ], + } + }, + "collaborating_teams": { + "type": [ + "array", + "null" + ], + "description": "A list of teams that collaborate on the advisory.", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", "properties": { - "cvss_v3": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { "type": [ - "object", + "string", "null" - ], + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", "properties": { - "vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS 3 vector string." + "pull": { + "type": "boolean" }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS 3 score.", - "minimum": 0, - "maximum": 10, - "readOnly": true + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" } }, "required": [ - "vector_string", - "score" + "pull", + "triage", + "push", + "maintain", + "admin" ] }, - "cvss_v4": { - "type": [ - "object", - "null" + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" ], - "properties": { - "vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS 4 vector string." + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS 4 score.", - "minimum": 0, - "maximum": 10, - "readOnly": true + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] } - }, - "required": [ - "vector_string", - "score" ] } - } - }, - "cwes": { - "type": [ - "array", - "null" - ], - "items": { + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } + }, + "private_fork": { + "readOnly": true, + "description": "A temporary private fork of the advisory's repository for collaborating on a fix.", + "allOf": [ + { + "title": "Simple Repository", + "description": "A GitHub repository.", "type": "object", "properties": { - "cwe_id": { - "type": "string", - "description": "The Common Weakness Enumeration (CWE) identifier." + "id": { + "type": "integer", + "format": "int64", + "description": "A unique identifier of the repository.", + "examples": [ + 1296269 + ] }, - "name": { + "node_id": { "type": "string", - "description": "The name of the CWE.", - "readOnly": true - } - }, - "required": [ - "cwe_id", - "name" - ] - }, - "readOnly": true - }, - "cwe_ids": { - "type": [ - "array", - "null" - ], - "description": "A list of only the CWE IDs.", - "items": { - "type": "string" - } - }, - "credits": { - "type": [ - "array", - "null" - ], - "items": { - "type": "object", - "properties": { - "login": { + "description": "The GraphQL identifier of the repository.", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { "type": "string", - "description": "The username of the user credited." + "description": "The name of the repository.", + "examples": [ + "Hello-World" + ] }, - "type": { + "full_name": { "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" + "description": "The full, globally unique, name of the repository.", + "examples": [ + "octocat/Hello-World" ] - } - } - } - }, - "credits_detailed": { - "type": [ - "array", - "null" - ], - "items": { - "description": "A credit given to a user for a repository security advisory.", - "type": "object", - "properties": { - "user": { + }, + "owner": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -677490,1114 +691626,500 @@ "url" ] }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] - }, - "state": { - "type": "string", - "description": "The state of the user's acceptance of the credit.", - "enum": [ - "accepted", - "declined", - "pending" - ] - } - }, - "required": [ - "user", - "type", - "state" - ], - "additionalProperties": false - }, - "readOnly": true - }, - "collaborating_users": { - "type": [ - "array", - "null" - ], - "description": "A list of users that collaborate on the advisory.", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] + "private": { + "type": "boolean", + "description": "Whether the repository is private." }, "html_url": { "type": "string", "format": "uri", + "description": "The URL to view the repository on GitHub.com.", "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" + "https://github.com/octocat/Hello-World" ] - } - }, - "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" - ] - } - }, - "collaborating_teams": { - "type": [ - "array", - "null" - ], - "description": "A list of teams that collaborate on the advisory.", - "items": { - "title": "Team", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "slug": { - "type": "string" }, "description": { "type": [ "string", "null" + ], + "description": "The repository description.", + "examples": [ + "This your first repo!" ] }, - "privacy": { - "type": "string" - }, - "notification_setting": { - "type": "string" - }, - "permission": { - "type": "string" - }, - "permissions": { - "type": "object", - "properties": { - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - }, - "admin": { - "type": "boolean" - } - }, - "required": [ - "pull", - "triage", - "push", - "maintain", - "admin" - ] + "fork": { + "type": "boolean", + "description": "Whether the repository is a fork." }, "url": { - "type": "string", - "format": "uri" - }, - "html_url": { "type": "string", "format": "uri", + "description": "The URL to get more information about the repository from the GitHub API.", "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "members_url": { - "type": "string" - }, - "repositories_url": { - "type": "string", - "format": "uri" - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "access_source": { - "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", - "type": "string", - "enum": [ - "direct", - "organization", - "enterprise" - ], - "examples": [ - "direct" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 + "https://api.github.com/repos/octocat/Hello-World" ] }, - "parent": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Team Simple", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the team", - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VGVhbTE=" - ] - }, - "url": { - "description": "URL for the team", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1" - ] - }, - "members_url": { - "type": "string", - "examples": [ - "https://api.github.com/organizations/1/team/1/members{/member}" - ] - }, - "name": { - "description": "Name of the team", - "type": "string", - "examples": [ - "Justice League" - ] - }, - "description": { - "description": "Description of the team", - "type": [ - "string", - "null" - ], - "examples": [ - "A great team." - ] - }, - "permission": { - "description": "Permission that the team will have for its repositories", - "type": "string", - "examples": [ - "admin" - ] - }, - "privacy": { - "description": "The level of privacy this team should have", - "type": "string", - "examples": [ - "closed" - ] - }, - "notification_setting": { - "description": "The notification setting the team has set", - "type": "string", - "examples": [ - "notifications_enabled" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "repositories_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1/repos" - ] - }, - "slug": { - "type": "string", - "examples": [ - "justice-league" - ] - }, - "ldap_dn": { - "description": "Distinguished Name (DN) that team maps to within LDAP environment", - "type": "string", - "examples": [ - "uid=example,ou=users,dc=github,dc=com" - ] - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "type" - ] - } - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "parent", - "type" - ] - } - }, - "private_fork": { - "readOnly": true, - "description": "A temporary private fork of the advisory's repository for collaborating on a fix.", - "allOf": [ - { - "title": "Simple Repository", - "description": "A GitHub repository.", - "type": "object", - "properties": { - "id": { - "type": "integer", - "format": "int64", - "description": "A unique identifier of the repository.", - "examples": [ - 1296269 - ] - }, - "node_id": { - "type": "string", - "description": "The GraphQL identifier of the repository.", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "type": "string", - "description": "The name of the repository.", - "examples": [ - "Hello-World" - ] - }, - "full_name": { - "type": "string", - "description": "The full, globally unique, name of the repository.", - "examples": [ - "octocat/Hello-World" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - }, - "private": { - "type": "boolean", - "description": "Whether the repository is private." - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The URL to view the repository on GitHub.com.", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "description": "The repository description.", - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean", - "description": "Whether the repository is a fork." - }, - "url": { - "type": "string", - "format": "uri", - "description": "The URL to get more information about the repository from the GitHub API.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "description": "A template for the API URL to download the repository as an archive.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "description": "A template for the API URL to list the available assignees for issues in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "description": "A template for the API URL to create or retrieve a raw Git blob in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "description": "A template for the API URL to get information about branches in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "description": "A template for the API URL to get information about collaborators of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "description": "A template for the API URL to get information about comments on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "description": "A template for the API URL to get information about commits on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "description": "A template for the API URL to compare two commits or refs.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "description": "A template for the API URL to get the contents of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "description": "A template for the API URL to list the contributors to the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the deployments of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the downloads on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the events of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the forks of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "description": "A template for the API URL to get information about Git commits of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "description": "A template for the API URL to get information about Git refs of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "description": "A template for the API URL to get information about Git tags of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "issue_comment_url": { - "type": "string", - "description": "A template for the API URL to get information about issue comments on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "description": "A template for the API URL to get information about issue events on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "description": "A template for the API URL to get information about issues on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "description": "A template for the API URL to get information about deploy keys on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "description": "A template for the API URL to get information about labels of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get information about the languages of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "description": "The API URL to merge branches in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "description": "A template for the API URL to get information about milestones of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "description": "A template for the API URL to get information about notifications on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "description": "A template for the API URL to get information about pull requests on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "description": "A template for the API URL to get information about releases on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the stargazers on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "description": "A template for the API URL to get information about statuses of a commit.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the subscribers on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "description": "The API URL to subscribe to notifications for this repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "description": "The API URL to get information about tags on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the teams on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "description": "A template for the API URL to create or retrieve a raw Git tree of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "hooks_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the hooks on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/hooks" - ] - } + "archive_url": { + "type": "string", + "description": "A template for the API URL to download the repository as an archive.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] }, - "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" - ] - } - ], - "type": [ - "null" - ] - } - }, - "required": [ - "ghsa_id", - "cve_id", - "url", - "html_url", - "summary", - "description", - "severity", - "author", - "publisher", - "identifiers", - "state", - "created_at", - "updated_at", - "published_at", - "closed_at", - "withdrawn_at", - "submission", - "vulnerabilities", - "cwes", - "cwe_ids", - "credits", - "credits_detailed", - "collaborating_users", - "collaborating_teams", - "private_fork" - ], - "additionalProperties": false - } + "assignees_url": { + "type": "string", + "description": "A template for the API URL to list the available assignees for issues in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "description": "A template for the API URL to create or retrieve a raw Git blob in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "description": "A template for the API URL to get information about branches in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "description": "A template for the API URL to get information about collaborators of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "description": "A template for the API URL to get information about comments on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "description": "A template for the API URL to get information about commits on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "description": "A template for the API URL to compare two commits or refs.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "description": "A template for the API URL to get the contents of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "description": "A template for the API URL to list the contributors to the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the deployments of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the downloads on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the events of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the forks of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "description": "A template for the API URL to get information about Git commits of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "description": "A template for the API URL to get information about Git refs of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "description": "A template for the API URL to get information about Git tags of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "issue_comment_url": { + "type": "string", + "description": "A template for the API URL to get information about issue comments on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "description": "A template for the API URL to get information about issue events on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "description": "A template for the API URL to get information about issues on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "description": "A template for the API URL to get information about deploy keys on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "description": "A template for the API URL to get information about labels of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get information about the languages of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "description": "The API URL to merge branches in the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "description": "A template for the API URL to get information about milestones of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "description": "A template for the API URL to get information about notifications on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "description": "A template for the API URL to get information about pull requests on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "description": "A template for the API URL to get information about releases on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the stargazers on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "description": "A template for the API URL to get information about statuses of a commit.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the subscribers on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "description": "The API URL to subscribe to notifications for this repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "description": "The API URL to get information about tags on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the teams on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "description": "A template for the API URL to create or retrieve a raw Git tree of the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "description": "The API URL to list the hooks on the repository.", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/hooks" + ] + } + }, + "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" + ] + } + ], + "type": [ + "null" + ] + } + }, + "required": [ + "ghsa_id", + "cve_id", + "url", + "html_url", + "summary", + "description", + "severity", + "author", + "publisher", + "identifiers", + "state", + "created_at", + "updated_at", + "published_at", + "closed_at", + "withdrawn_at", + "submission", + "vulnerabilities", + "cwes", + "cwe_ids", + "credits", + "credits_detailed", + "collaborating_users", + "collaborating_teams", + "private_fork" + ], + "additionalProperties": false }, "examples": { "default": { - "value": [ - { - "ghsa_id": "GHSA-abcd-1234-efgh", - "cve_id": "CVE-2050-00000", - "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", - "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", - "summary": "A short summary of the advisory.", - "description": "A detailed description of what the advisory entails.", - "severity": "critical", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false + "value": { + "ghsa_id": "GHSA-abcd-1234-efgh", + "cve_id": "CVE-2050-00000", + "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", + "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", + "summary": "A newly discovered vulnerability", + "description": "A more in-depth description of what the problem is.", + "severity": "high", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "publisher": null, + "identifiers": [ + { + "type": "GHSA", + "value": "GHSA-abcd-1234-efgh" }, - "publisher": { + { + "type": "CVE", + "value": null + } + ], + "state": "triage", + "created_at": "2020-01-01T00:00:00Z", + "updated_at": "2020-01-02T00:00:00Z", + "published_at": null, + "closed_at": null, + "withdrawn_at": null, + "submission": { + "accepted": false + }, + "vulnerabilities": [ + { + "package": { + "ecosystem": "npm", + "name": "a-package" + }, + "vulnerable_version_range": "< 1.0.0", + "patched_versions": "1.0.0", + "vulnerable_functions": [ + "important_function" + ] + } + ], + "cvss_severities": { + "cvss_v3": null, + "cvss_v4": null + }, + "cwes": [ + { + "cwe_id": "CWE-123", + "name": "A CWE" + } + ], + "cwe_ids": [ + "CWE-123" + ], + "credits": [ + { + "login": "octocat", + "type": "finder" + } + ], + "credits_detailed": [ + { + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "type": "finder", + "state": "accepted" + } + ], + "collaborating_users": [ + { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", @@ -678616,405 +692138,34 @@ "received_events_url": "https://api.github.com/users/octocat/received_events", "type": "User", "site_admin": false - }, - "identifiers": [ - { - "type": "GHSA", - "value": "GHSA-abcd-1234-efgh" - }, - { - "type": "CVE", - "value": "CVE-2050-00000" - } - ], - "state": "published", - "created_at": "2020-01-01T00:00:00Z", - "updated_at": "2020-01-02T00:00:00Z", - "published_at": "2020-01-03T00:00:00Z", - "closed_at": null, - "withdrawn_at": null, - "submission": null, - "vulnerabilities": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" - ] - }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" - ] - } - ], - "cvss": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 - }, - "cvss_severities": { - "cvss_v3": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 - }, - "cvss_v4": { - "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", - "score": 9.3 - } - }, - "cwes": [ - { - "cwe_id": "CWE-123", - "name": "A CWE" - } - ], - "cwe_ids": [ - "CWE-123" - ], - "credits": [ - { - "login": "octocat", - "type": "analyst" - } - ], - "credits_detailed": [ - { - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "type": "analyst", - "state": "accepted" - } - ], - "collaborating_users": [ - { - "login": "octokitten", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octokitten_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octokitten", - "html_url": "https://github.com/octokitten", - "followers_url": "https://api.github.com/users/octokitten/followers", - "following_url": "https://api.github.com/users/octokitten/following{/other_user}", - "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", - "organizations_url": "https://api.github.com/users/octokitten/orgs", - "repos_url": "https://api.github.com/users/octokitten/repos", - "events_url": "https://api.github.com/users/octokitten/events{/privacy}", - "received_events_url": "https://api.github.com/users/octokitten/received_events", - "type": "User", - "site_admin": false - } - ], - "collaborating_teams": [ - { - "name": "Justice League", - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "permission": "admin", - "parent": null - } - ], - "private_fork": null - }, - { - "ghsa_id": "GHSA-1234-5678-9012", - "cve_id": "CVE-2051-0000", - "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-1234-5678-9012", - "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-1234-5678-9012", - "summary": "A short summary of the advisory.", - "description": "A detailed description of what the advisory entails.", - "severity": "low", - "author": { - "login": "monauser", - "id": 2, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/monauser", - "html_url": "https://github.com/monauser", - "followers_url": "https://api.github.com/users/monauser/followers", - "following_url": "https://api.github.com/users/monauser/following{/other_user}", - "gists_url": "https://api.github.com/users/monauser/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monauser/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monauser/subscriptions", - "organizations_url": "https://api.github.com/users/monauser/orgs", - "repos_url": "https://api.github.com/users/monauser/repos", - "events_url": "https://api.github.com/users/monauser/events{/privacy}", - "received_events_url": "https://api.github.com/users/monauser/received_events", - "type": "User", - "site_admin": false - }, - "publisher": { - "login": "monalisa", - "id": 3, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/monalisa", - "html_url": "https://github.com/monalisa", - "followers_url": "https://api.github.com/users/monalisa/followers", - "following_url": "https://api.github.com/users/monalisa/following{/other_user}", - "gists_url": "https://api.github.com/users/monalisa/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monalisa/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monalisa/subscriptions", - "organizations_url": "https://api.github.com/users/monalisa/orgs", - "repos_url": "https://api.github.com/users/monalisa/repos", - "events_url": "https://api.github.com/users/monalisa/events{/privacy}", - "received_events_url": "https://api.github.com/users/monalisa/received_events", - "type": "User", - "site_admin": false - }, - "identifiers": [ - { - "type": "GHSA", - "value": "GHSA-1234-5678-9012" - }, - { - "type": "CVE", - "value": "CVE-2051-00000" - } - ], - "state": "published", - "created_at": "2020-01-03T00:00:00Z", - "updated_at": "2020-01-04T00:00:00Z", - "published_at": "2020-01-04T00:00:00Z", - "closed_at": null, - "withdrawn_at": null, - "submission": { - "accepted": true - }, - "vulnerabilities": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" - ] - }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" - ] - } - ], - "cvss": { - "vector_string": "AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N", - "score": 1.6 - }, - "cvss_severities": { - "cvss_v3": { - "vector_string": "CVSS:3.1/AV:P/AC:H/PR:H/UI:R/S:U/C:N/I:L/A:N", - "score": 1.6 - }, - "cvss_v4": { - "vector_string": "CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", - "score": 7.1 - } - }, - "cwes": [ - { - "cwe_id": "CWE-456", - "name": "A CWE 2.0" - } - ], - "cwe_ids": [ - "CWE-456" - ], - "credits": [ - { - "login": "monauser", - "type": "reporter" - } - ], - "credits_detailed": [ - { - "user": { - "login": "monauser", - "id": 2, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/monauser", - "html_url": "https://github.com/monauser", - "followers_url": "https://api.github.com/users/monauser/followers", - "following_url": "https://api.github.com/users/monauser/following{/other_user}", - "gists_url": "https://api.github.com/users/monauser/gists{/gist_id}", - "starred_url": "https://api.github.com/users/monauser/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/monauser/subscriptions", - "organizations_url": "https://api.github.com/users/monauser/orgs", - "repos_url": "https://api.github.com/users/monauser/repos", - "events_url": "https://api.github.com/users/monauser/events{/privacy}", - "received_events_url": "https://api.github.com/users/monauser/received_events", - "type": "User", - "site_admin": false - }, - "type": "reporter", - "state": "accepted" - } - ], - "collaborating_users": [ - { - "login": "octokitten", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octokitten_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octokitten", - "html_url": "https://github.com/octokitten", - "followers_url": "https://api.github.com/users/octokitten/followers", - "following_url": "https://api.github.com/users/octokitten/following{/other_user}", - "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", - "organizations_url": "https://api.github.com/users/octokitten/orgs", - "repos_url": "https://api.github.com/users/octokitten/repos", - "events_url": "https://api.github.com/users/octokitten/events{/privacy}", - "received_events_url": "https://api.github.com/users/octokitten/received_events", - "type": "User", - "site_admin": false - } - ], - "collaborating_teams": [ - { - "name": "Justice League", - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "permission": "admin", - "parent": null - } - ], - "private_fork": { - "id": 217723378, - "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", - "name": "octo-repo-ghsa-1234-5678-9012", - "full_name": "octo-org/octo-repo-ghsa-1234-5678-9012", - "owner": { - "login": "octo-org", - "id": 6811672, - "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", - "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/octo-org", - "html_url": "https://github.com/octo-org", - "followers_url": "https://api.github.com/users/octo-org/followers", - "following_url": "https://api.github.com/users/octo-org/following{/other_user}", - "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", - "organizations_url": "https://api.github.com/users/octo-org/orgs", - "repos_url": "https://api.github.com/users/octo-org/repos", - "events_url": "https://api.github.com/users/octo-org/events{/privacy}", - "received_events_url": "https://api.github.com/users/octo-org/received_events", - "type": "Organization", - "site_admin": false - }, - "private": true, - "html_url": "https://github.com/octo-org/octo-repo-ghsa-1234-5678-9012", - "description": null, - "fork": false, - "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012", - "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/comments{/number}", - "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/commits{/sha}", - "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/contributors", - "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/deployments", - "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/downloads", - "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/events", - "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/forks", - "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/tags{/sha}", - "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/hooks", - "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/issues{/number}", - "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/labels{/name}", - "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/languages", - "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/merges", - "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/pulls{/number}", - "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/releases{/id}", - "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/stargazers", - "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/subscribers", - "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/subscription", - "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/tags", - "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/teams", - "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-1234-5678-9012/git/trees{/sha}" } - } - ] + ], + "collaborating_teams": [ + { + "name": "Justice League", + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "permission": "admin", + "parent": null + } + ], + "private_fork": null + } } } } } }, - "400": { - "description": "Bad Request", + "403": { + "description": "Forbidden", "content": { "application/json": { "schema": { @@ -679036,48 +692187,6 @@ } } } - }, - "application/scim+json": { - "schema": { - "title": "Scim Error", - "description": "Scim Error", - "type": "object", - "properties": { - "message": { - "type": [ - "string", - "null" - ] - }, - "documentation_url": { - "type": [ - "string", - "null" - ] - }, - "detail": { - "type": [ - "string", - "null" - ] - }, - "status": { - "type": "integer" - }, - "scimType": { - "type": [ - "string", - "null" - ] - }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } - } - } - } } } }, @@ -679106,6 +692215,81 @@ } } } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } } }, "x-github": { @@ -679114,17 +692298,19 @@ "category": "security-advisories", "subcategory": "repository-advisories" } - }, - "post": { - "summary": "Create a repository security advisory", - "description": "Creates a new repository security advisory.\n\nIn order to create a draft repository security advisory, the authenticated user must be a security manager or administrator of that repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", + } + }, + "/repos/{owner}/{repo}/security-advisories/{ghsa_id}": { + "get": { + "summary": "Get a repository security advisory", + "description": "Get a repository security advisory using its GitHub Security Advisory (GHSA) identifier.\n\nAnyone can access any published security advisory on a public repository.\n\nThe authenticated user can access an unpublished security advisory from a repository if they are a security manager or administrator of that repository, or if they are a\ncollaborator on the security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:read` scope to to get a published security advisory in a private repository, or any unpublished security advisory that the authenticated user has access to.", "tags": [ "security-advisories" ], - "operationId": "security-advisories/create-repository-advisory", + "operationId": "security-advisories/get-repository-advisory", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#create-a-repository-security-advisory" + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#get-a-repository-security-advisory" }, "parameters": [ { @@ -679144,275 +692330,19 @@ "schema": { "type": "string" } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "summary": { - "type": "string", - "description": "A short summary of the advisory.", - "maxLength": 1024 - }, - "description": { - "type": "string", - "description": "A detailed description of what the advisory impacts.", - "maxLength": 65535 - }, - "cve_id": { - "type": [ - "string", - "null" - ], - "description": "The Common Vulnerabilities and Exposures (CVE) ID." - }, - "vulnerabilities": { - "type": "array", - "description": "A product affected by the vulnerability detailed in a repository security advisory.", - "items": { - "type": "object", - "properties": { - "package": { - "description": "The name of the package affected by the vulnerability.", - "type": "object", - "properties": { - "ecosystem": { - "type": "string", - "description": "The package's language or package management ecosystem.", - "enum": [ - "rubygems", - "npm", - "pip", - "maven", - "nuget", - "composer", - "go", - "rust", - "erlang", - "actions", - "pub", - "other", - "swift" - ] - }, - "name": { - "type": [ - "string", - "null" - ], - "description": "The unique package name within its ecosystem." - } - }, - "required": [ - "ecosystem" - ] - }, - "vulnerable_version_range": { - "type": [ - "string", - "null" - ], - "description": "The range of the package versions affected by the vulnerability." - }, - "patched_versions": { - "type": [ - "string", - "null" - ], - "description": "The package version(s) that resolve the vulnerability." - }, - "vulnerable_functions": { - "type": [ - "array", - "null" - ], - "description": "The functions in the package that are affected.", - "items": { - "type": "string" - } - } - }, - "required": [ - "package" - ], - "additionalProperties": false - } - }, - "cwe_ids": { - "type": [ - "array", - "null" - ], - "description": "A list of Common Weakness Enumeration (CWE) IDs.", - "items": { - "type": "string" - } - }, - "credits": { - "type": [ - "array", - "null" - ], - "description": "A list of users receiving credit for their participation in the security advisory.", - "items": { - "type": "object", - "properties": { - "login": { - "type": "string", - "description": "The username of the user credited." - }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] - } - }, - "required": [ - "login", - "type" - ], - "additionalProperties": false - } - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the advisory. You must choose between setting this field or `cvss_vector_string`.", - "enum": [ - "critical", - "high", - "medium", - "low", - null - ] - }, - "cvss_vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS vector that calculates the severity of the advisory. You must choose between setting this field or `severity`." - }, - "start_private_fork": { - "type": "boolean", - "description": "Whether to create a temporary private fork of the repository to collaborate on a fix.", - "default": false - } - }, - "required": [ - "summary", - "description", - "vulnerabilities" - ], - "additionalProperties": false - }, - "examples": { - "default": { - "value": { - "summary": "A new important advisory", - "description": "A more in-depth description of what the problem is.", - "severity": "high", - "cve_id": null, - "vulnerabilities": [ - { - "package": { - "name": "a-package", - "ecosystem": "npm" - }, - "vulnerable_version_range": "< 1.0.0", - "patched_versions": "1.0.0", - "vulnerable_functions": [ - "important_function" - ] - } - ], - "cwe_ids": [ - "CWE-1101", - "CWE-20" - ], - "credits": [ - { - "login": "monalisa", - "type": "reporter" - }, - { - "login": "octocat", - "type": "analyst" - } - ] - } - }, - "withVectorString": { - "value": { - "summary": "A new important advisory", - "description": "A more in-depth description of what the problem is.", - "cvss_vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L", - "cve_id": null, - "vulnerabilities": [ - { - "package": { - "name": "a-package", - "ecosystem": "npm" - }, - "vulnerable_version_range": "< 1.0.0", - "patched_versions": "1.0.0", - "vulnerable_functions": [ - "important_function" - ] - } - ], - "cwe_ids": [ - "CWE-1101", - "CWE-20" - ], - "credits": [ - { - "login": "monalisa", - "type": "reporter" - }, - { - "login": "octocat", - "type": "analyst" - } - ] - } - }, - "minimal": { - "value": { - "summary": "A new important advisory", - "description": "A more in-depth description of what the problem is.", - "vulnerabilities": [ - { - "package": { - "ecosystem": "npm" - } - } - ] - } - } - } + }, + { + "name": "ghsa_id", + "description": "The GHSA (GitHub Security Advisory) identifier of the advisory.", + "in": "path", + "required": true, + "schema": { + "type": "string" } } - }, + ], "responses": { - "201": { + "200": { "description": "Response", "content": { "application/json": { @@ -681694,81 +694624,6 @@ } } } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } } }, "x-github": { @@ -681777,19 +694632,17 @@ "category": "security-advisories", "subcategory": "repository-advisories" } - } - }, - "/repos/{owner}/{repo}/security-advisories/reports": { - "post": { - "summary": "Privately report a security vulnerability", - "description": "Report a security vulnerability to the maintainers of the repository.\nSee \"[Privately reporting a security vulnerability](https://docs.github.com/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability)\" for more information about private vulnerability reporting.", + }, + "patch": { + "summary": "Update a repository security advisory", + "description": "Update a repository security advisory using its GitHub Security Advisory (GHSA) identifier.\n\nIn order to update any security advisory, the authenticated user must be a security manager or administrator of that repository,\nor a collaborator on the repository security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", "tags": [ "security-advisories" ], - "operationId": "security-advisories/create-private-vulnerability-report", + "operationId": "security-advisories/update-repository-advisory", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#privately-report-a-security-vulnerability" + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#update-a-repository-security-advisory" }, "parameters": [ { @@ -681809,6 +694662,15 @@ "schema": { "type": "string" } + }, + { + "name": "ghsa_id", + "description": "The GHSA (GitHub Security Advisory) identifier of the advisory.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } } ], "requestBody": { @@ -681828,12 +694690,16 @@ "description": "A detailed description of what the advisory impacts.", "maxLength": 65535 }, - "vulnerabilities": { + "cve_id": { "type": [ - "array", + "string", "null" ], - "description": "An array of products affected by the vulnerability detailed in a repository security advisory.", + "description": "The Common Vulnerabilities and Exposures (CVE) ID." + }, + "vulnerabilities": { + "type": "array", + "description": "A product affected by the vulnerability detailed in a repository security advisory.", "items": { "type": "object", "properties": { @@ -681913,6 +694779,43 @@ "type": "string" } }, + "credits": { + "type": [ + "array", + "null" + ], + "description": "A list of users receiving credit for their participation in the security advisory.", + "items": { + "type": "object", + "properties": { + "login": { + "type": "string", + "description": "The username of the user credited." + }, + "type": { + "type": "string", + "description": "The type of credit the user is receiving.", + "enum": [ + "analyst", + "finder", + "reporter", + "coordinator", + "remediation_developer", + "remediation_reviewer", + "remediation_verifier", + "tool", + "sponsor", + "other" + ] + } + }, + "required": [ + "login", + "type" + ], + "additionalProperties": false + } + }, "severity": { "type": [ "string", @@ -681934,48 +694837,102 @@ ], "description": "The CVSS vector that calculates the severity of the advisory. You must choose between setting this field or `severity`." }, - "start_private_fork": { - "type": "boolean", - "description": "Whether to create a temporary private fork of the repository to collaborate on a fix.", - "default": false + "state": { + "type": "string", + "description": "The state of the advisory.", + "enum": [ + "published", + "closed", + "draft" + ] + }, + "collaborating_users": { + "type": [ + "array", + "null" + ], + "description": "A list of usernames who have been granted write access to the advisory.", + "items": { + "type": "string" + } + }, + "collaborating_teams": { + "type": [ + "array", + "null" + ], + "description": "A list of team slugs which have been granted write access to the advisory.", + "items": { + "type": "string" + } } }, - "required": [ - "summary", - "description" - ], "additionalProperties": false }, "examples": { "default": { + "summary": "Updating the severity and state.", "value": { - "summary": "A newly discovered vulnerability", - "description": "A more in-depth description of what the problem is.", - "severity": "high", - "vulnerabilities": [ + "severity": "critical", + "state": "published" + } + }, + "add_credit": { + "summary": "To add a credit to an advisory, send the whole array of values.", + "value": { + "credits": [ { - "package": { - "name": "a-package", - "ecosystem": "npm" - }, - "vulnerable_version_range": "< 1.0.0", - "patched_versions": "1.0.0", - "vulnerable_functions": [ - "important_function" - ] + "login": "monauser", + "type": "remediation_developer" } - ], - "cwe_ids": [ - "CWE-123" ] } + }, + "update_vvrs": { + "summary": "To add vulnerable versions, include existing versions in the array.", + "value": [ + { + "package": { + "ecosystem": "pip", + "name": "a-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", + "vulnerable_functions": [ + "function1" + ] + }, + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" + ] + } + ] + }, + "invalid_state_transition": { + "summary": "Example of an invalid state transition, from `published` to `draft`.", + "value": { + "state": "draft" + } + }, + "update_severity_with_cvss_set": { + "summary": "Severity cannot be updated when the CVSS is already set.", + "value": { + "severity": "low" + } } } } } }, "responses": { - "201": { + "200": { "description": "Response", "content": { "application/json": { @@ -683959,9 +696916,9 @@ "cve_id": "CVE-2050-00000", "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", - "summary": "A newly discovered vulnerability", - "description": "A more in-depth description of what the problem is.", - "severity": "high", + "summary": "A short summary of the advisory.", + "description": "A detailed description of what the advisory entails.", + "severity": "critical", "author": { "login": "octocat", "id": 1, @@ -683982,7 +696939,26 @@ "type": "User", "site_admin": false }, - "publisher": null, + "publisher": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, "identifiers": [ { "type": "GHSA", @@ -683990,34 +696966,49 @@ }, { "type": "CVE", - "value": null + "value": "CVE-2050-00000" } ], - "state": "triage", + "state": "published", "created_at": "2020-01-01T00:00:00Z", "updated_at": "2020-01-02T00:00:00Z", - "published_at": null, + "published_at": "2020-01-03T00:00:00Z", "closed_at": null, "withdrawn_at": null, - "submission": { - "accepted": false - }, + "submission": null, "vulnerabilities": [ { "package": { - "ecosystem": "npm", + "ecosystem": "pip", "name": "a-package" }, - "vulnerable_version_range": "< 1.0.0", - "patched_versions": "1.0.0", + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", "vulnerable_functions": [ - "important_function" + "function1" + ] + }, + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" ] } ], "cvss_severities": { - "cvss_v3": null, - "cvss_v4": null + "cvss_v3": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 + }, + "cvss_v4": { + "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", + "score": 9.3 + } }, "cwes": [ { @@ -684031,7 +697022,7 @@ "credits": [ { "login": "octocat", - "type": "finder" + "type": "analyst" } ], "credits_detailed": [ @@ -684056,28 +697047,277 @@ "type": "User", "site_admin": false }, - "type": "finder", + "type": "analyst", "state": "accepted" } ], "collaborating_users": [ + { + "login": "octokitten", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octokitten_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octokitten", + "html_url": "https://github.com/octokitten", + "followers_url": "https://api.github.com/users/octokitten/followers", + "following_url": "https://api.github.com/users/octokitten/following{/other_user}", + "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", + "organizations_url": "https://api.github.com/users/octokitten/orgs", + "repos_url": "https://api.github.com/users/octokitten/repos", + "events_url": "https://api.github.com/users/octokitten/events{/privacy}", + "received_events_url": "https://api.github.com/users/octokitten/received_events", + "type": "User", + "site_admin": false + } + ], + "collaborating_teams": [ + { + "name": "Justice League", + "id": 1, + "node_id": "MDQ6VGVhbTE=", + "slug": "justice-league", + "description": "A great team.", + "privacy": "closed", + "notification_setting": "notifications_enabled", + "url": "https://api.github.com/teams/1", + "html_url": "https://github.com/orgs/github/teams/justice-league", + "members_url": "https://api.github.com/teams/1/members{/member}", + "repositories_url": "https://api.github.com/teams/1/repos", + "permission": "admin", + "parent": null + } + ], + "private_fork": { + "id": 217723378, + "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", + "name": "octo-repo-ghsa-abcd-1234-efgh", + "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", + "owner": { + "login": "octo-org", + "id": 6811672, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", + "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octo-org", + "html_url": "https://github.com/octo-org", + "followers_url": "https://api.github.com/users/octo-org/followers", + "following_url": "https://api.github.com/users/octo-org/following{/other_user}", + "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", + "organizations_url": "https://api.github.com/users/octo-org/orgs", + "repos_url": "https://api.github.com/users/octo-org/repos", + "events_url": "https://api.github.com/users/octo-org/events{/privacy}", + "received_events_url": "https://api.github.com/users/octo-org/received_events", + "type": "Organization", + "site_admin": false + }, + "private": true, + "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "description": null, + "fork": false, + "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", + "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", + "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", + "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", + "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", + "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", + "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", + "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", + "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", + "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", + "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", + "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", + "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", + "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", + "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", + "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", + "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", + "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", + "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", + "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", + "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" + } + } + }, + "add_credit": { + "value": { + "ghsa_id": "GHSA-abcd-1234-efgh", + "cve_id": "CVE-2050-00000", + "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", + "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", + "summary": "A short summary of the advisory.", + "description": "A detailed description of what the advisory entails.", + "severity": "critical", + "author": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "publisher": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "identifiers": [ + { + "type": "GHSA", + "value": "GHSA-abcd-1234-efgh" + }, + { + "type": "CVE", + "value": "CVE-2050-00000" + } + ], + "state": "published", + "created_at": "2020-01-01T00:00:00Z", + "updated_at": "2020-01-02T00:00:00Z", + "published_at": "2020-01-03T00:00:00Z", + "closed_at": null, + "withdrawn_at": null, + "submission": null, + "vulnerabilities": [ + { + "package": { + "ecosystem": "pip", + "name": "a-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.1", + "patched_versions": "1.0.1", + "vulnerable_functions": [ + "function1" + ] + }, + { + "package": { + "ecosystem": "pip", + "name": "another-package" + }, + "vulnerable_version_range": ">= 1.0.0, < 1.0.2", + "patched_versions": "1.0.2", + "vulnerable_functions": [ + "function2" + ] + } + ], + "cvss_severities": { + "cvss_v3": { + "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", + "score": 9.8 + }, + "cvss_v4": { + "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", + "score": 9.3 + } + }, + "cwes": [ + { + "cwe_id": "CWE-123", + "name": "A CWE" + } + ], + "cwe_ids": [ + "CWE-123" + ], + "credits": [ { "login": "octocat", + "type": "analyst" + } + ], + "credits_detailed": [ + { + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "type": "analyst", + "state": "accepted" + } + ], + "collaborating_users": [ + { + "login": "octokitten", "id": 1, "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "avatar_url": "https://github.com/images/error/octokitten_happy.gif", "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", + "url": "https://api.github.com/users/octokitten", + "html_url": "https://github.com/octokitten", + "followers_url": "https://api.github.com/users/octokitten/followers", + "following_url": "https://api.github.com/users/octokitten/following{/other_user}", + "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", + "organizations_url": "https://api.github.com/users/octokitten/orgs", + "repos_url": "https://api.github.com/users/octokitten/repos", + "events_url": "https://api.github.com/users/octokitten/events{/privacy}", + "received_events_url": "https://api.github.com/users/octokitten/received_events", "type": "User", "site_admin": false } @@ -684099,7 +697339,346 @@ "parent": null } ], - "private_fork": null + "private_fork": { + "id": 217723378, + "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", + "name": "octo-repo-ghsa-abcd-1234-efgh", + "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", + "owner": { + "login": "octo-org", + "id": 6811672, + "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", + "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", + "gravatar_id": "", + "url": "https://api.github.com/users/octo-org", + "html_url": "https://github.com/octo-org", + "followers_url": "https://api.github.com/users/octo-org/followers", + "following_url": "https://api.github.com/users/octo-org/following{/other_user}", + "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", + "organizations_url": "https://api.github.com/users/octo-org/orgs", + "repos_url": "https://api.github.com/users/octo-org/repos", + "events_url": "https://api.github.com/users/octo-org/events{/privacy}", + "received_events_url": "https://api.github.com/users/octo-org/received_events", + "type": "Organization", + "site_admin": false + }, + "private": true, + "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "description": null, + "fork": false, + "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", + "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", + "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", + "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", + "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", + "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", + "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", + "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", + "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", + "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", + "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", + "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", + "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", + "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", + "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", + "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", + "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", + "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", + "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", + "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", + "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", + "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + }, + "examples": { + "invalid_state_transition": { + "value": { + "message": "Invalid state transition from `published` to `draft`." + } + }, + "update_severity_with_cvss_set": { + "value": { + "message": "Cannot update severity value when CVSS is set." + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "security-advisories", + "subcategory": "repository-advisories" + } + } + }, + "/repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve": { + "post": { + "summary": "Request a CVE for a repository security advisory", + "description": "If you want a CVE identification number for the security vulnerability in your project, and don't already have one, you can request a CVE identification number from GitHub. For more information see \"[Requesting a CVE identification number](https://docs.github.com/code-security/security-advisories/repository-security-advisories/publishing-a-repository-security-advisory#requesting-a-cve-identification-number-optional).\"\n\nYou may request a CVE for public repositories, but cannot do so for private repositories.\n\nIn order to request a CVE for a repository security advisory, the authenticated user must be a security manager or administrator of that repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", + "tags": [ + "security-advisories" + ], + "operationId": "security-advisories/create-repository-advisory-cve-request", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#request-a-cve-for-a-repository-security-advisory" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "ghsa_id", + "description": "The GHSA (GitHub Security Advisory) identifier of the advisory.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "responses": { + "202": { + "description": "Accepted", + "content": { + "application/json": { + "schema": { + "type": "object" + }, + "examples": { + "default": { + "value": null + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { + "type": [ + "string", + "null" + ] + }, + "documentation_url": { + "type": [ + "string", + "null" + ] + }, + "detail": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": "integer" + }, + "scimType": { + "type": [ + "string", + "null" + ] + }, + "schemas": { + "type": "array", + "items": { + "type": "string" + } } } } @@ -684242,17 +697821,17 @@ } } }, - "/repos/{owner}/{repo}/security-advisories/{ghsa_id}": { - "get": { - "summary": "Get a repository security advisory", - "description": "Get a repository security advisory using its GitHub Security Advisory (GHSA) identifier.\n\nAnyone can access any published security advisory on a public repository.\n\nThe authenticated user can access an unpublished security advisory from a repository if they are a security manager or administrator of that repository, or if they are a\ncollaborator on the security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:read` scope to to get a published security advisory in a private repository, or any unpublished security advisory that the authenticated user has access to.", + "/repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks": { + "post": { + "summary": "Create a temporary private fork", + "description": "Create a temporary private fork to collaborate on fixing a security vulnerability in your repository.\n\n> [!NOTE]\n> Forking a repository happens asynchronously. You may have to wait up to 5 minutes before you can access the fork.", "tags": [ "security-advisories" ], - "operationId": "security-advisories/get-repository-advisory", + "operationId": "security-advisories/create-fork", "externalDocs": { "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#get-a-repository-security-advisory" + "url": "https://docs.github.com/rest/security-advisories/repository-advisories#create-a-temporary-private-fork" }, "parameters": [ { @@ -684284,1431 +697863,809 @@ } ], "responses": { - "200": { + "202": { "description": "Response", "content": { "application/json": { "schema": { - "description": "A repository security advisory.", + "title": "Full Repository", + "description": "Full Repository", "type": "object", "properties": { - "ghsa_id": { + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1296269 + ] + }, + "node_id": { "type": "string", - "description": "The GitHub Security Advisory ID.", - "readOnly": true + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] }, - "cve_id": { + "name": { + "type": "string", + "examples": [ + "Hello-World" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { "type": [ "string", "null" ], - "description": "The Common Vulnerabilities and Exposures (CVE) ID." + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" }, "url": { "type": "string", "format": "uri", - "description": "The API URL for the advisory.", - "readOnly": true + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] }, - "html_url": { + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { "type": "string", "format": "uri", - "description": "The URL for the advisory.", - "readOnly": true + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] }, - "summary": { + "deployments_url": { "type": "string", - "description": "A short summary of the advisory.", - "maxLength": 1024 + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] }, - "description": { - "type": [ - "string", - "null" - ], - "description": "A detailed description of what the advisory entails.", - "maxLength": 65535 + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the advisory.", - "enum": [ - "critical", - "high", - "medium", - "low", - null + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" ] }, - "author": { - "readOnly": true, - "description": "The author of the advisory.", - "allOf": [ - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ], - "type": [ - "null" + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" ] }, - "publisher": { - "readOnly": true, - "description": "The publisher of the advisory.", - "allOf": [ - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ], - "type": [ - "null" + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" ] }, - "identifiers": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of identifier.", - "enum": [ - "CVE", - "GHSA" - ] - }, - "value": { - "type": "string", - "description": "The identifier value." - } - }, - "required": [ - "type", - "value" - ] - }, - "readOnly": true + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] }, - "state": { + "git_tags_url": { "type": "string", - "description": "The state of the advisory.", - "enum": [ - "published", - "closed", - "withdrawn", - "draft", - "triage" + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" ] }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was created, in ISO 8601 format.", - "readOnly": true + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] }, - "updated_at": { + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { "type": [ "string", "null" ], - "format": "date-time", - "description": "The date and time of when the advisory was last updated, in ISO 8601 format.", - "readOnly": true + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] }, - "published_at": { + "homepage": { "type": [ "string", "null" ], - "format": "date-time", - "description": "The date and time of when the advisory was published, in ISO 8601 format.", - "readOnly": true + "format": "uri", + "examples": [ + "https://github.com" + ] }, - "closed_at": { + "language": { "type": [ "string", "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was closed, in ISO 8601 format.", - "readOnly": true + ] }, - "withdrawn_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was withdrawn, in ISO 8601 format.", - "readOnly": true + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] }, - "submission": { - "type": [ - "object", - "null" - ], - "readOnly": true, - "properties": { - "accepted": { - "type": "boolean", - "description": "Whether a private vulnerability report was accepted by the repository's administrators.", - "readOnly": true - } - }, - "required": [ - "accepted" + "stargazers_count": { + "type": "integer", + "examples": [ + 80 ] }, - "vulnerabilities": { - "type": [ - "array", - "null" - ], - "items": { - "description": "A product affected by the vulnerability detailed in a repository security advisory.", - "type": "object", - "properties": { - "package": { - "description": "The name of the package affected by the vulnerability.", - "type": [ - "object", - "null" - ], - "properties": { - "ecosystem": { - "type": "string", - "description": "The package's language or package management ecosystem.", - "enum": [ - "rubygems", - "npm", - "pip", - "maven", - "nuget", - "composer", - "go", - "rust", - "erlang", - "actions", - "pub", - "other", - "swift" - ] - }, - "name": { - "type": [ - "string", - "null" - ], - "description": "The unique package name within its ecosystem." - } - }, - "required": [ - "ecosystem", - "name" - ] - }, - "vulnerable_version_range": { - "type": [ - "string", - "null" - ], - "description": "The range of the package versions affected by the vulnerability." - }, - "patched_versions": { - "type": [ - "string", - "null" - ], - "description": "The package version(s) that resolve the vulnerability." - }, - "vulnerable_functions": { - "type": [ - "array", - "null" - ], - "description": "The functions in the package that are affected.", - "items": { - "type": "string" - } - } - }, - "required": [ - "package", - "vulnerable_version_range", - "patched_versions", - "vulnerable_functions" - ], - "additionalProperties": false - } + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] }, - "cvss_severities": { - "type": [ - "object", - "null" - ], - "properties": { - "cvss_v3": { - "type": [ - "object", - "null" - ], - "properties": { - "vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS 3 vector string." - }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS 3 score.", - "minimum": 0, - "maximum": 10, - "readOnly": true - } - }, - "required": [ - "vector_string", - "score" - ] - }, - "cvss_v4": { - "type": [ - "object", - "null" - ], - "properties": { - "vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS 4 vector string." - }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS 4 score.", - "minimum": 0, - "maximum": 10, - "readOnly": true - } - }, - "required": [ - "vector_string", - "score" - ] - } - } + "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", + "examples": [ + 108 + ] }, - "cwes": { - "type": [ - "array", - "null" - ], - "items": { - "type": "object", - "properties": { - "cwe_id": { - "type": "string", - "description": "The Common Weakness Enumeration (CWE) identifier." - }, - "name": { - "type": "string", - "description": "The name of the CWE.", - "readOnly": true - } - }, - "required": [ - "cwe_id", - "name" - ] - }, - "readOnly": true + "default_branch": { + "type": "string", + "examples": [ + "master" + ] }, - "cwe_ids": { - "type": [ - "array", - "null" - ], - "description": "A list of only the CWE IDs.", - "items": { - "type": "string" - } + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] }, - "credits": { - "type": [ - "array", - "null" - ], - "items": { - "type": "object", - "properties": { - "login": { - "type": "string", - "description": "The username of the user credited." - }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] - } - } - } + "is_template": { + "type": "boolean", + "examples": [ + true + ] }, - "credits_detailed": { - "type": [ - "array", - "null" - ], + "topics": { + "type": "array", "items": { - "description": "A credit given to a user for a repository security advisory.", - "type": "object", - "properties": { - "user": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] - }, - "state": { - "type": "string", - "description": "The state of the user's acceptance of the credit.", - "enum": [ - "accepted", - "declined", - "pending" - ] - } - }, - "required": [ - "user", - "type", - "state" - ], - "additionalProperties": false + "type": "string" }, - "readOnly": true + "examples": [ + "octocat", + "atom", + "electron", + "API" + ] }, - "collaborating_users": { - "type": [ - "array", - "null" - ], - "description": "A list of users that collaborate on the advisory.", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } + "has_issues": { + "type": "boolean", + "examples": [ + true + ] }, - "collaborating_teams": { - "type": [ - "array", - "null" + "has_projects": { + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_discussions": { + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" ], - "description": "A list of teams that collaborate on the advisory.", - "items": { - "title": "Team", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "slug": { - "type": "string" - }, - "description": { - "type": [ - "string", - "null" - ] - }, - "privacy": { - "type": "string" - }, - "notification_setting": { - "type": "string" - }, - "permission": { - "type": "string" - }, - "permissions": { - "type": "object", - "properties": { - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - }, - "admin": { - "type": "boolean" - } - }, - "required": [ - "pull", - "triage", - "push", - "maintain", - "admin" - ] - }, - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "members_url": { - "type": "string" - }, - "repositories_url": { - "type": "string", - "format": "uri" - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "access_source": { - "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", - "type": "string", - "enum": [ - "direct", - "organization", - "enterprise" - ], - "examples": [ - "direct" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - }, - "parent": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Team Simple", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the team", - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VGVhbTE=" - ] - }, - "url": { - "description": "URL for the team", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1" - ] - }, - "members_url": { - "type": "string", - "examples": [ - "https://api.github.com/organizations/1/team/1/members{/member}" - ] - }, - "name": { - "description": "Name of the team", - "type": "string", - "examples": [ - "Justice League" - ] - }, - "description": { - "description": "Description of the team", - "type": [ - "string", - "null" - ], - "examples": [ - "A great team." - ] - }, - "permission": { - "description": "Permission that the team will have for its repositories", - "type": "string", - "examples": [ - "admin" - ] - }, - "privacy": { - "description": "The level of privacy this team should have", - "type": "string", - "examples": [ - "closed" - ] - }, - "notification_setting": { - "description": "The notification setting the team has set", - "type": "string", - "examples": [ - "notifications_enabled" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "repositories_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1/repos" - ] - }, - "slug": { - "type": "string", - "examples": [ - "justice-league" - ] - }, - "ldap_dn": { - "description": "Distinguished Name (DN) that team maps to within LDAP environment", - "type": "string", - "examples": [ - "uid=example,ou=users,dc=github,dc=com" - ] - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "type" - ] - } - ] - } + "examples": [ + "all" + ] + }, + "archived": { + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "type": "string", + "examples": [ + "public" + ] + }, + "pushed_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "triage": { + "type": "boolean" }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "parent", - "type" - ] - } + "pull": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] }, - "private_fork": { - "readOnly": true, - "description": "A temporary private fork of the advisory's repository for collaborating on a fix.", - "allOf": [ + "allow_rebase_merge": { + "type": "boolean", + "examples": [ + true + ] + }, + "template_repository": { + "anyOf": [ { - "title": "Simple Repository", - "description": "A GitHub repository.", + "type": "null" + }, + { + "title": "Repository", + "description": "A repository on GitHub.", "type": "object", "properties": { "id": { + "description": "Unique identifier of the repository", "type": "integer", "format": "int64", - "description": "A unique identifier of the repository.", "examples": [ - 1296269 + 42 ] }, "node_id": { "type": "string", - "description": "The GraphQL identifier of the repository.", "examples": [ "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" ] }, "name": { - "type": "string", "description": "The name of the repository.", + "type": "string", "examples": [ - "Hello-World" + "Team Environment" ] }, "full_name": { "type": "string", - "description": "The full, globally unique, name of the repository.", "examples": [ "octocat/Hello-World" ] }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, "owner": { "title": "Simple User", "description": "A GitHub user.", @@ -685878,13 +698835,13 @@ ] }, "private": { - "type": "boolean", - "description": "Whether the repository is private." + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" }, "html_url": { "type": "string", "format": "uri", - "description": "The URL to view the repository on GitHub.com.", "examples": [ "https://github.com/octocat/Hello-World" ] @@ -685894,287 +698851,571 @@ "string", "null" ], - "description": "The repository description.", "examples": [ "This your first repo!" ] }, "fork": { - "type": "boolean", - "description": "Whether the repository is a fork." + "type": "boolean" }, "url": { "type": "string", "format": "uri", - "description": "The URL to get more information about the repository from the GitHub API.", "examples": [ "https://api.github.com/repos/octocat/Hello-World" ] }, "archive_url": { "type": "string", - "description": "A template for the API URL to download the repository as an archive.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" ] }, "assignees_url": { "type": "string", - "description": "A template for the API URL to list the available assignees for issues in the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/assignees{/user}" + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" ] }, "blobs_url": { "type": "string", - "description": "A template for the API URL to create or retrieve a raw Git blob in the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" ] }, "branches_url": { "type": "string", - "description": "A template for the API URL to get information about branches in the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/branches{/branch}" + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" ] }, "collaborators_url": { "type": "string", - "description": "A template for the API URL to get information about collaborators of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" ] }, "comments_url": { "type": "string", - "description": "A template for the API URL to get information about comments on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/comments{/number}" + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" ] }, "commits_url": { "type": "string", - "description": "A template for the API URL to get information about commits on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/commits{/sha}" + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" ] }, "compare_url": { "type": "string", - "description": "A template for the API URL to compare two commits or refs.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" ] }, "contents_url": { "type": "string", - "description": "A template for the API URL to get the contents of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contents/{+path}" + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" ] }, "contributors_url": { "type": "string", "format": "uri", - "description": "A template for the API URL to list the contributors to the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contributors" + "http://api.github.com/repos/octocat/Hello-World/contributors" ] }, "deployments_url": { "type": "string", "format": "uri", - "description": "The API URL to list the deployments of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/deployments" + "http://api.github.com/repos/octocat/Hello-World/deployments" ] }, "downloads_url": { "type": "string", "format": "uri", - "description": "The API URL to list the downloads on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/downloads" + "http://api.github.com/repos/octocat/Hello-World/downloads" ] }, "events_url": { "type": "string", "format": "uri", - "description": "The API URL to list the events of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/events" + "http://api.github.com/repos/octocat/Hello-World/events" ] }, "forks_url": { "type": "string", "format": "uri", - "description": "The API URL to list the forks of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/forks" + "http://api.github.com/repos/octocat/Hello-World/forks" ] }, "git_commits_url": { "type": "string", - "description": "A template for the API URL to get information about Git commits of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" ] }, "git_refs_url": { "type": "string", - "description": "A template for the API URL to get information about Git refs of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" ] }, "git_tags_url": { "type": "string", - "description": "A template for the API URL to get information about Git tags of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" ] }, "issue_comment_url": { "type": "string", - "description": "A template for the API URL to get information about issue comments on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" ] }, "issue_events_url": { "type": "string", - "description": "A template for the API URL to get information about issue events on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" ] }, "issues_url": { "type": "string", - "description": "A template for the API URL to get information about issues on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues{/number}" + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" ] }, "keys_url": { "type": "string", - "description": "A template for the API URL to get information about deploy keys on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" ] }, "labels_url": { "type": "string", - "description": "A template for the API URL to get information about labels of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/labels{/name}" + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" ] }, "languages_url": { "type": "string", "format": "uri", - "description": "The API URL to get information about the languages of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/languages" + "http://api.github.com/repos/octocat/Hello-World/languages" ] }, "merges_url": { "type": "string", "format": "uri", - "description": "The API URL to merge branches in the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/merges" + "http://api.github.com/repos/octocat/Hello-World/merges" ] }, "milestones_url": { "type": "string", - "description": "A template for the API URL to get information about milestones of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones{/number}" + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" ] }, "notifications_url": { "type": "string", - "description": "A template for the API URL to get information about notifications on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" ] }, "pulls_url": { "type": "string", - "description": "A template for the API URL to get information about pull requests on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls{/number}" + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" ] }, "releases_url": { "type": "string", - "description": "A template for the API URL to get information about releases on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/releases{/id}" + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" ] }, "stargazers_url": { "type": "string", "format": "uri", - "description": "The API URL to list the stargazers on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/stargazers" + "http://api.github.com/repos/octocat/Hello-World/stargazers" ] }, "statuses_url": { "type": "string", - "description": "A template for the API URL to get information about statuses of a commit.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" ] }, "subscribers_url": { "type": "string", "format": "uri", - "description": "The API URL to list the subscribers on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/subscribers" + "http://api.github.com/repos/octocat/Hello-World/subscribers" ] }, "subscription_url": { "type": "string", "format": "uri", - "description": "The API URL to subscribe to notifications for this repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/subscription" + "http://api.github.com/repos/octocat/Hello-World/subscription" ] }, "tags_url": { "type": "string", "format": "uri", - "description": "The API URL to get information about tags on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/tags" + "http://api.github.com/repos/octocat/Hello-World/tags" ] }, "teams_url": { "type": "string", "format": "uri", - "description": "The API URL to list the teams on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/teams" + "http://api.github.com/repos/octocat/Hello-World/teams" ] }, "trees_url": { "type": "string", - "description": "A template for the API URL to create or retrieve a raw Git tree of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" ] }, "hooks_url": { "type": "string", "format": "uri", - "description": "The API URL to list the hooks on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/hooks" + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } } }, "required": [ @@ -686223,720 +699464,210 @@ "tags_url", "teams_url", "trees_url", - "url" + "url", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" ] } - ], + ] + }, + "temp_clone_token": { "type": [ + "string", "null" ] - } - }, - "required": [ - "ghsa_id", - "cve_id", - "url", - "html_url", - "summary", - "description", - "severity", - "author", - "publisher", - "identifiers", - "state", - "created_at", - "updated_at", - "published_at", - "closed_at", - "withdrawn_at", - "submission", - "vulnerabilities", - "cwes", - "cwe_ids", - "credits", - "credits_detailed", - "collaborating_users", - "collaborating_teams", - "private_fork" - ], - "additionalProperties": false - }, - "examples": { - "default": { - "value": { - "ghsa_id": "GHSA-abcd-1234-efgh", - "cve_id": "CVE-2050-00000", - "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", - "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", - "summary": "A short summary of the advisory.", - "description": "A detailed description of what the advisory entails.", - "severity": "critical", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "publisher": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "identifiers": [ - { - "type": "GHSA", - "value": "GHSA-abcd-1234-efgh" - }, - { - "type": "CVE", - "value": "CVE-2050-00000" - } - ], - "state": "published", - "created_at": "2020-01-01T00:00:00Z", - "updated_at": "2020-01-02T00:00:00Z", - "published_at": "2020-01-03T00:00:00Z", - "closed_at": null, - "withdrawn_at": null, - "submission": null, - "vulnerabilities": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" - ] - }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" - ] - } - ], - "cvss_severities": { - "cvss_v3": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 - }, - "cvss_v4": { - "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", - "score": 9.3 - } - }, - "cwes": [ - { - "cwe_id": "CWE-123", - "name": "A CWE" - } - ], - "cwe_ids": [ - "CWE-123" - ], - "credits": [ - { - "login": "octocat", - "type": "analyst" - } - ], - "credits_detailed": [ - { - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "type": "analyst", - "state": "accepted" - } + }, + "allow_squash_merge": { + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "type": "boolean", + "examples": [ + false + ] + }, + "allow_merge_commit": { + "type": "boolean", + "examples": [ + true + ] + }, + "allow_update_branch": { + "type": "boolean", + "examples": [ + true + ] + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" ], - "collaborating_users": [ - { - "login": "octokitten", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octokitten_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octokitten", - "html_url": "https://github.com/octokitten", - "followers_url": "https://api.github.com/users/octokitten/followers", - "following_url": "https://api.github.com/users/octokitten/following{/other_user}", - "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", - "organizations_url": "https://api.github.com/users/octokitten/orgs", - "repos_url": "https://api.github.com/users/octokitten/repos", - "events_url": "https://api.github.com/users/octokitten/events{/privacy}", - "received_events_url": "https://api.github.com/users/octokitten/received_events", - "type": "User", - "site_admin": false - } + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit).", + "examples": [ + "PR_TITLE" + ] + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" ], - "collaborating_teams": [ - { - "name": "Justice League", - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "permission": "admin", - "parent": null - } + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message.", + "examples": [ + "PR_BODY" + ] + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" ], - "private_fork": { - "id": 217723378, - "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", - "name": "octo-repo-ghsa-abcd-1234-efgh", - "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", - "owner": { - "login": "octo-org", - "id": 6811672, - "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", - "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/octo-org", - "html_url": "https://github.com/octo-org", - "followers_url": "https://api.github.com/users/octo-org/followers", - "following_url": "https://api.github.com/users/octo-org/following{/other_user}", - "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", - "organizations_url": "https://api.github.com/users/octo-org/orgs", - "repos_url": "https://api.github.com/users/octo-org/repos", - "events_url": "https://api.github.com/users/octo-org/events{/privacy}", - "received_events_url": "https://api.github.com/users/octo-org/received_events", - "type": "Organization", - "site_admin": false - }, - "private": true, - "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "description": null, - "fork": false, - "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", - "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", - "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", - "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", - "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", - "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", - "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", - "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", - "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", - "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", - "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", - "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", - "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", - "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", - "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", - "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", - "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", - "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", - "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", - "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", - "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" + "description": "The default value for a merge commit title.\n\n - `PR_TITLE` - default to the pull request's title.\n - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).", + "examples": [ + "PR_TITLE" + ] }, - "documentation_url": { - "type": "string" + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message.", + "examples": [ + "PR_BODY" + ] }, - "url": { - "type": "string" + "allow_forking": { + "type": "boolean", + "examples": [ + true + ] }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" + "web_commit_signoff_required": { + "type": "boolean", + "examples": [ + false + ] }, - "documentation_url": { - "type": "string" + "subscribers_count": { + "type": "integer", + "examples": [ + 42 + ] }, - "url": { - "type": "string" + "network_count": { + "type": "integer", + "examples": [ + 0 + ] }, - "status": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "security-advisories", - "subcategory": "repository-advisories" - } - }, - "patch": { - "summary": "Update a repository security advisory", - "description": "Update a repository security advisory using its GitHub Security Advisory (GHSA) identifier.\n\nIn order to update any security advisory, the authenticated user must be a security manager or administrator of that repository,\nor a collaborator on the repository security advisory.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", - "tags": [ - "security-advisories" - ], - "operationId": "security-advisories/update-repository-advisory", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#update-a-repository-security-advisory" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ghsa_id", - "description": "The GHSA (GitHub Security Advisory) identifier of the advisory.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "summary": { - "type": "string", - "description": "A short summary of the advisory.", - "maxLength": 1024 - }, - "description": { - "type": "string", - "description": "A detailed description of what the advisory impacts.", - "maxLength": 65535 - }, - "cve_id": { - "type": [ - "string", - "null" - ], - "description": "The Common Vulnerabilities and Exposures (CVE) ID." - }, - "vulnerabilities": { - "type": "array", - "description": "A product affected by the vulnerability detailed in a repository security advisory.", - "items": { - "type": "object", - "properties": { - "package": { - "description": "The name of the package affected by the vulnerability.", + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", "type": "object", "properties": { - "ecosystem": { + "key": { "type": "string", - "description": "The package's language or package management ecosystem.", - "enum": [ - "rubygems", - "npm", - "pip", - "maven", - "nuget", - "composer", - "go", - "rust", - "erlang", - "actions", - "pub", - "other", - "swift" + "examples": [ + "mit" ] }, "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { "type": [ "string", "null" ], - "description": "The unique package name within its ecosystem." + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" } }, "required": [ - "ecosystem" - ] - }, - "vulnerable_version_range": { - "type": [ - "string", - "null" - ], - "description": "The range of the package versions affected by the vulnerability." - }, - "patched_versions": { - "type": [ - "string", - "null" - ], - "description": "The package version(s) that resolve the vulnerability." - }, - "vulnerable_functions": { - "type": [ - "array", - "null" - ], - "description": "The functions in the package that are affected.", - "items": { - "type": "string" - } - } - }, - "required": [ - "package" - ], - "additionalProperties": false - } - }, - "cwe_ids": { - "type": [ - "array", - "null" - ], - "description": "A list of Common Weakness Enumeration (CWE) IDs.", - "items": { - "type": "string" - } - }, - "credits": { - "type": [ - "array", - "null" - ], - "description": "A list of users receiving credit for their participation in the security advisory.", - "items": { - "type": "object", - "properties": { - "login": { - "type": "string", - "description": "The username of the user credited." - }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" + "key", + "name", + "url", + "spdx_id", + "node_id" ] } - }, - "required": [ - "login", - "type" - ], - "additionalProperties": false - } - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the advisory. You must choose between setting this field or `cvss_vector_string`.", - "enum": [ - "critical", - "high", - "medium", - "low", - null - ] - }, - "cvss_vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS vector that calculates the severity of the advisory. You must choose between setting this field or `severity`." - }, - "state": { - "type": "string", - "description": "The state of the advisory.", - "enum": [ - "published", - "closed", - "draft" - ] - }, - "collaborating_users": { - "type": [ - "array", - "null" - ], - "description": "A list of usernames who have been granted write access to the advisory.", - "items": { - "type": "string" - } - }, - "collaborating_teams": { - "type": [ - "array", - "null" - ], - "description": "A list of team slugs which have been granted write access to the advisory.", - "items": { - "type": "string" - } - } - }, - "additionalProperties": false - }, - "examples": { - "default": { - "summary": "Updating the severity and state.", - "value": { - "severity": "critical", - "state": "published" - } - }, - "add_credit": { - "summary": "To add a credit to an advisory, send the whole array of values.", - "value": { - "credits": [ - { - "login": "monauser", - "type": "remediation_developer" - } - ] - } - }, - "update_vvrs": { - "summary": "To add vulnerable versions, include existing versions in the array.", - "value": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" - ] - }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" - ] - } - ] - }, - "invalid_state_transition": { - "summary": "Example of an invalid state transition, from `published` to `draft`.", - "value": { - "state": "draft" - } - }, - "update_severity_with_cvss_set": { - "summary": "Severity cannot be updated when the CVSS is already set.", - "value": { - "severity": "low" - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "description": "A repository security advisory.", - "type": "object", - "properties": { - "ghsa_id": { - "type": "string", - "description": "The GitHub Security Advisory ID.", - "readOnly": true - }, - "cve_id": { - "type": [ - "string", - "null" - ], - "description": "The Common Vulnerabilities and Exposures (CVE) ID." - }, - "url": { - "type": "string", - "format": "uri", - "description": "The API URL for the advisory.", - "readOnly": true - }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The URL for the advisory.", - "readOnly": true - }, - "summary": { - "type": "string", - "description": "A short summary of the advisory.", - "maxLength": 1024 - }, - "description": { - "type": [ - "string", - "null" - ], - "description": "A detailed description of what the advisory entails.", - "maxLength": 65535 - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the advisory.", - "enum": [ - "critical", - "high", - "medium", - "low", - null ] }, - "author": { - "readOnly": true, - "description": "The author of the advisory.", - "allOf": [ + "organization": { + "anyOf": [ + { + "type": "null" + }, { "title": "Simple User", "description": "A GitHub user.", @@ -687105,16 +699836,131 @@ "url" ] } - ], - "type": [ - "null" ] }, - "publisher": { - "readOnly": true, - "description": "The publisher of the advisory.", - "allOf": [ - { + "parent": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { "title": "Simple User", "description": "A GitHub user.", "type": "object", @@ -687281,7222 +700127,4797 @@ "type", "url" ] - } - ], - "type": [ - "null" - ] - }, - "identifiers": { - "type": "array", - "items": { - "type": "object", - "properties": { - "type": { - "type": "string", - "description": "The type of identifier.", - "enum": [ - "CVE", - "GHSA" - ] - }, - "value": { - "type": "string", - "description": "The identifier value." - } }, - "required": [ - "type", - "value" - ] - }, - "readOnly": true - }, - "state": { - "type": "string", - "description": "The state of the advisory.", - "enum": [ - "published", - "closed", - "withdrawn", - "draft", - "triage" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was created, in ISO 8601 format.", - "readOnly": true - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was last updated, in ISO 8601 format.", - "readOnly": true - }, - "published_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was published, in ISO 8601 format.", - "readOnly": true - }, - "closed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was closed, in ISO 8601 format.", - "readOnly": true - }, - "withdrawn_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "description": "The date and time of when the advisory was withdrawn, in ISO 8601 format.", - "readOnly": true - }, - "submission": { - "type": [ - "object", - "null" - ], - "readOnly": true, - "properties": { - "accepted": { - "type": "boolean", - "description": "Whether a private vulnerability report was accepted by the repository's administrators.", - "readOnly": true - } - }, - "required": [ - "accepted" - ] - }, - "vulnerabilities": { - "type": [ - "array", - "null" - ], - "items": { - "description": "A product affected by the vulnerability detailed in a repository security advisory.", - "type": "object", - "properties": { - "package": { - "description": "The name of the package affected by the vulnerability.", - "type": [ - "object", - "null" - ], - "properties": { - "ecosystem": { - "type": "string", - "description": "The package's language or package management ecosystem.", - "enum": [ - "rubygems", - "npm", - "pip", - "maven", - "nuget", - "composer", - "go", - "rust", - "erlang", - "actions", - "pub", - "other", - "swift" - ] - }, - "name": { - "type": [ - "string", - "null" - ], - "description": "The unique package name within its ecosystem." - } - }, - "required": [ - "ecosystem", - "name" - ] - }, - "vulnerable_version_range": { - "type": [ - "string", - "null" - ], - "description": "The range of the package versions affected by the vulnerability." - }, - "patched_versions": { - "type": [ - "string", - "null" - ], - "description": "The package version(s) that resolve the vulnerability." - }, - "vulnerable_functions": { - "type": [ - "array", - "null" - ], - "description": "The functions in the package that are affected.", - "items": { - "type": "string" - } + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" } }, - "required": [ - "package", - "vulnerable_version_range", - "patched_versions", - "vulnerable_functions" - ], - "additionalProperties": false - } - }, - "cvss_severities": { - "type": [ - "object", - "null" - ], - "properties": { - "cvss_v3": { + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { "type": [ - "object", + "string", "null" ], - "properties": { - "vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS 3 vector string." - }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS 3 score.", - "minimum": 0, - "maximum": 10, - "readOnly": true - } - }, - "required": [ - "vector_string", - "score" + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" ] }, - "cvss_v4": { + "created_at": { "type": [ - "object", + "string", "null" ], - "properties": { - "vector_string": { - "type": [ - "string", - "null" - ], - "description": "The CVSS 4 vector string." - }, - "score": { - "type": [ - "number", - "null" - ], - "description": "The CVSS 4 score.", - "minimum": 0, - "maximum": 10, - "readOnly": true - } - }, - "required": [ - "vector_string", - "score" + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" ] - } - } - }, - "cwes": { - "type": [ - "array", - "null" - ], - "items": { - "type": "object", - "properties": { - "cwe_id": { - "type": "string", - "description": "The Common Weakness Enumeration (CWE) identifier." - }, - "name": { - "type": "string", - "description": "The name of the CWE.", - "readOnly": true - } }, - "required": [ - "cwe_id", - "name" - ] - }, - "readOnly": true - }, - "cwe_ids": { - "type": [ - "array", - "null" - ], - "description": "A list of only the CWE IDs.", - "items": { - "type": "string" - } - }, - "credits": { - "type": [ - "array", - "null" - ], - "items": { - "type": "object", - "properties": { - "login": { - "type": "string", - "description": "The username of the user credited." - }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] - } - } - } - }, - "credits_detailed": { - "type": [ - "array", - "null" - ], - "items": { - "description": "A credit given to a user for a repository security advisory.", - "type": "object", - "properties": { - "user": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - }, - "type": { - "type": "string", - "description": "The type of credit the user is receiving.", - "enum": [ - "analyst", - "finder", - "reporter", - "coordinator", - "remediation_developer", - "remediation_reviewer", - "remediation_verifier", - "tool", - "sponsor", - "other" - ] - }, - "state": { - "type": "string", - "description": "The state of the user's acceptance of the credit.", - "enum": [ - "accepted", - "declined", - "pending" - ] - } + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] }, - "required": [ - "user", - "type", - "state" - ], - "additionalProperties": false - }, - "readOnly": true - }, - "collaborating_users": { - "type": [ - "array", - "null" - ], - "description": "A list of users that collaborate on the advisory.", - "items": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] }, - "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" - ] - } - }, - "collaborating_teams": { - "type": [ - "array", - "null" - ], - "description": "A list of teams that collaborate on the advisory.", - "items": { - "title": "Team", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "type": "integer" - }, - "node_id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "slug": { - "type": "string" - }, - "description": { - "type": [ - "string", - "null" - ] - }, - "privacy": { - "type": "string" - }, - "notification_setting": { - "type": "string" - }, - "permission": { - "type": "string" - }, - "permissions": { - "type": "object", - "properties": { - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - }, - "admin": { - "type": "boolean" - } - }, - "required": [ - "pull", - "triage", - "push", - "maintain", - "admin" - ] - }, - "url": { - "type": "string", - "format": "uri" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "members_url": { - "type": "string" - }, - "repositories_url": { - "type": "string", - "format": "uri" - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "access_source": { - "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", - "type": "string", - "enum": [ - "direct", - "organization", - "enterprise" - ], - "examples": [ - "direct" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - }, - "parent": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Team Simple", - "description": "Groups of organization members that gives permissions on specified repositories.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the team", - "type": "integer", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VGVhbTE=" - ] - }, - "url": { - "description": "URL for the team", - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1" - ] - }, - "members_url": { - "type": "string", - "examples": [ - "https://api.github.com/organizations/1/team/1/members{/member}" - ] - }, - "name": { - "description": "Name of the team", - "type": "string", - "examples": [ - "Justice League" - ] - }, - "description": { - "description": "Description of the team", - "type": [ - "string", - "null" - ], - "examples": [ - "A great team." - ] - }, - "permission": { - "description": "Permission that the team will have for its repositories", - "type": "string", - "examples": [ - "admin" - ] - }, - "privacy": { - "description": "The level of privacy this team should have", - "type": "string", - "examples": [ - "closed" - ] - }, - "notification_setting": { - "description": "The notification setting the team has set", - "type": "string", - "examples": [ - "notifications_enabled" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/orgs/rails/teams/core" - ] - }, - "repositories_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/organizations/1/team/1/repos" - ] - }, - "slug": { - "type": "string", - "examples": [ - "justice-league" - ] - }, - "ldap_dn": { - "description": "Distinguished Name (DN) that team maps to within LDAP environment", - "type": "string", - "examples": [ - "uid=example,ou=users,dc=github,dc=com" - ] - }, - "type": { - "description": "The ownership type of the team", - "type": "string", - "enum": [ - "enterprise", - "organization" - ] - }, - "organization_id": { - "type": "integer", - "description": "Unique identifier of the organization to which this team belongs", - "examples": [ - 37 - ] - }, - "enterprise_id": { - "type": "integer", - "description": "Unique identifier of the enterprise to which this team belongs", - "examples": [ - 42 - ] - } - }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "type" - ] - } - ] - } + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] }, - "required": [ - "id", - "node_id", - "url", - "members_url", - "name", - "description", - "permission", - "html_url", - "repositories_url", - "slug", - "parent", - "type" - ] - } - }, - "private_fork": { - "readOnly": true, - "description": "A temporary private fork of the advisory's repository for collaborating on a fix.", - "allOf": [ - { - "title": "Simple Repository", - "description": "A GitHub repository.", + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { "type": "object", + "description": "The status of the code search index for this repository", "properties": { - "id": { - "type": "integer", - "format": "int64", - "description": "A unique identifier of the repository.", - "examples": [ - 1296269 - ] - }, - "node_id": { - "type": "string", - "description": "The GraphQL identifier of the repository.", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "type": "string", - "description": "The name of the repository.", - "examples": [ - "Hello-World" - ] + "lexical_search_ok": { + "type": "boolean" }, - "full_name": { - "type": "string", - "description": "The full, globally unique, name of the repository.", - "examples": [ - "octocat/Hello-World" - ] + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "source": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", + { + "title": "License Simple", + "description": "License Simple", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { + "key": { "type": "string", "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 + "mit" ] }, - "node_id": { + "name": { "type": "string", "examples": [ - "MDQ6VXNlcjE=" + "MIT License" ] }, - "avatar_url": { - "type": "string", + "url": { + "type": [ + "string", + "null" + ], "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "https://api.github.com/licenses/mit" ] }, - "gravatar_id": { + "spdx_id": { "type": [ "string", "null" ], "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "MIT" ] }, - "url": { + "node_id": { "type": "string", - "format": "uri", "examples": [ - "https://api.github.com/users/octocat" + "MDc6TGljZW5zZW1pdA==" ] }, "html_url": { "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "format": "uri" } }, "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" + "key", + "name", + "url", + "spdx_id", + "node_id" ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" }, - "private": { - "type": "boolean", - "description": "Whether the repository is private." + "pull": { + "type": "boolean" }, - "html_url": { - "type": "string", - "format": "uri", - "description": "The URL to view the repository on GitHub.com.", - "examples": [ - "https://github.com/octocat/Hello-World" - ] + "triage": { + "type": "boolean" }, - "description": { + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { "type": [ "string", "null" - ], - "description": "The repository description.", - "examples": [ - "This your first repo!" ] }, - "fork": { - "type": "boolean", - "description": "Whether the repository is a fork." - }, - "url": { - "type": "string", - "format": "uri", - "description": "The URL to get more information about the repository from the GitHub API.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "description": "A template for the API URL to download the repository as an archive.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "description": "A template for the API URL to list the available assignees for issues in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "description": "A template for the API URL to create or retrieve a raw Git blob in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "description": "A template for the API URL to get information about branches in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "description": "A template for the API URL to get information about collaborators of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "description": "A template for the API URL to get information about comments on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/comments{/number}" + "email": { + "type": [ + "string", + "null" ] }, - "commits_url": { + "login": { "type": "string", - "description": "A template for the API URL to get information about commits on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/commits{/sha}" + "octocat" ] }, - "compare_url": { - "type": "string", - "description": "A template for the API URL to compare two commits or refs.", + "id": { + "type": "integer", + "format": "int64", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + 1 ] }, - "contents_url": { + "node_id": { "type": "string", - "description": "A template for the API URL to get the contents of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contents/{+path}" + "MDQ6VXNlcjE=" ] }, - "contributors_url": { + "avatar_url": { "type": "string", "format": "uri", - "description": "A template for the API URL to list the contributors to the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/contributors" + "https://github.com/images/error/octocat_happy.gif" ] }, - "deployments_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the deployments of the repository.", + "gravatar_id": { + "type": [ + "string", + "null" + ], "examples": [ - "https://api.github.com/repos/octocat/Hello-World/deployments" + "41d064eb2195891e12d0413f63227ea7" ] }, - "downloads_url": { + "url": { "type": "string", "format": "uri", - "description": "The API URL to list the downloads on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/downloads" + "https://api.github.com/users/octocat" ] }, - "events_url": { + "html_url": { "type": "string", "format": "uri", - "description": "The API URL to list the events of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/events" + "https://github.com/octocat" ] }, - "forks_url": { + "followers_url": { "type": "string", "format": "uri", - "description": "The API URL to list the forks of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "description": "A template for the API URL to get information about Git commits of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "description": "A template for the API URL to get information about Git refs of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "description": "A template for the API URL to get information about Git tags of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "issue_comment_url": { - "type": "string", - "description": "A template for the API URL to get information about issue comments on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "description": "A template for the API URL to get information about issue events on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + "https://api.github.com/users/octocat/followers" ] }, - "issues_url": { + "following_url": { "type": "string", - "description": "A template for the API URL to get information about issues on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/issues{/number}" + "https://api.github.com/users/octocat/following{/other_user}" ] }, - "keys_url": { + "gists_url": { "type": "string", - "description": "A template for the API URL to get information about deploy keys on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + "https://api.github.com/users/octocat/gists{/gist_id}" ] }, - "labels_url": { + "starred_url": { "type": "string", - "description": "A template for the API URL to get information about labels of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/labels{/name}" + "https://api.github.com/users/octocat/starred{/owner}{/repo}" ] }, - "languages_url": { + "subscriptions_url": { "type": "string", "format": "uri", - "description": "The API URL to get information about the languages of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/languages" + "https://api.github.com/users/octocat/subscriptions" ] }, - "merges_url": { + "organizations_url": { "type": "string", "format": "uri", - "description": "The API URL to merge branches in the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "description": "A template for the API URL to get information about milestones of the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "description": "A template for the API URL to get information about notifications on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "description": "A template for the API URL to get information about pull requests on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "description": "A template for the API URL to get information about releases on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/releases{/id}" + "https://api.github.com/users/octocat/orgs" ] }, - "stargazers_url": { + "repos_url": { "type": "string", "format": "uri", - "description": "The API URL to list the stargazers on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "description": "A template for the API URL to get information about statuses of a commit.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + "https://api.github.com/users/octocat/repos" ] }, - "subscribers_url": { + "events_url": { "type": "string", - "format": "uri", - "description": "The API URL to list the subscribers on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/subscribers" + "https://api.github.com/users/octocat/events{/privacy}" ] }, - "subscription_url": { + "received_events_url": { "type": "string", "format": "uri", - "description": "The API URL to subscribe to notifications for this repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/subscription" + "https://api.github.com/users/octocat/received_events" ] }, - "tags_url": { + "type": { "type": "string", - "format": "uri", - "description": "The API URL to get information about tags on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/tags" + "User" ] }, - "teams_url": { - "type": "string", - "format": "uri", - "description": "The API URL to list the teams on the repository.", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World/teams" - ] + "site_admin": { + "type": "boolean" }, - "trees_url": { + "starred_at": { "type": "string", - "description": "A template for the API URL to create or retrieve a raw Git tree of the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + "\"2020-07-09T00:17:55Z\"" ] }, - "hooks_url": { + "user_view_type": { "type": "string", - "format": "uri", - "description": "The API URL to list the hooks on the repository.", "examples": [ - "https://api.github.com/repos/octocat/Hello-World/hooks" + "public" ] } }, "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", + "avatar_url", "events_url", - "fork", - "forks_url", - "full_name", - "git_commits_url", - "git_refs_url", - "git_tags_url", - "hooks_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", "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", + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", "url" ] - } - ], - "type": [ - "null" - ] - } - }, - "required": [ - "ghsa_id", - "cve_id", - "url", - "html_url", - "summary", - "description", - "severity", - "author", - "publisher", - "identifiers", - "state", - "created_at", - "updated_at", - "published_at", - "closed_at", - "withdrawn_at", - "submission", - "vulnerabilities", - "cwes", - "cwe_ids", - "credits", - "credits_detailed", - "collaborating_users", - "collaborating_teams", - "private_fork" - ], - "additionalProperties": false - }, - "examples": { - "default": { - "value": { - "ghsa_id": "GHSA-abcd-1234-efgh", - "cve_id": "CVE-2050-00000", - "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", - "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", - "summary": "A short summary of the advisory.", - "description": "A detailed description of what the advisory entails.", - "severity": "critical", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "publisher": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "identifiers": [ - { - "type": "GHSA", - "value": "GHSA-abcd-1234-efgh" }, - { - "type": "CVE", - "value": "CVE-2050-00000" - } - ], - "state": "published", - "created_at": "2020-01-01T00:00:00Z", - "updated_at": "2020-01-02T00:00:00Z", - "published_at": "2020-01-03T00:00:00Z", - "closed_at": null, - "withdrawn_at": null, - "submission": null, - "vulnerabilities": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" ] }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" ] - } - ], - "cvss_severities": { - "cvss_v3": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 }, - "cvss_v4": { - "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", - "score": 9.3 - } - }, - "cwes": [ - { - "cwe_id": "CWE-123", - "name": "A CWE" - } - ], - "cwe_ids": [ - "CWE-123" - ], - "credits": [ - { - "login": "octocat", - "type": "analyst" - } - ], - "credits_detailed": [ - { - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "type": "analyst", - "state": "accepted" - } - ], - "collaborating_users": [ - { - "login": "octokitten", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octokitten_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octokitten", - "html_url": "https://github.com/octokitten", - "followers_url": "https://api.github.com/users/octokitten/followers", - "following_url": "https://api.github.com/users/octokitten/following{/other_user}", - "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", - "organizations_url": "https://api.github.com/users/octokitten/orgs", - "repos_url": "https://api.github.com/users/octokitten/repos", - "events_url": "https://api.github.com/users/octokitten/events{/privacy}", - "received_events_url": "https://api.github.com/users/octokitten/received_events", - "type": "User", - "site_admin": false - } - ], - "collaborating_teams": [ - { - "name": "Justice League", - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "permission": "admin", - "parent": null - } - ], - "private_fork": { - "id": 217723378, - "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", - "name": "octo-repo-ghsa-abcd-1234-efgh", - "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", - "owner": { - "login": "octo-org", - "id": 6811672, - "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", - "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/octo-org", - "html_url": "https://github.com/octo-org", - "followers_url": "https://api.github.com/users/octo-org/followers", - "following_url": "https://api.github.com/users/octo-org/following{/other_user}", - "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", - "organizations_url": "https://api.github.com/users/octo-org/orgs", - "repos_url": "https://api.github.com/users/octo-org/repos", - "events_url": "https://api.github.com/users/octo-org/events{/privacy}", - "received_events_url": "https://api.github.com/users/octo-org/received_events", - "type": "Organization", - "site_admin": false + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] }, - "private": true, - "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "description": null, - "fork": false, - "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", - "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", - "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", - "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", - "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", - "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", - "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", - "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", - "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", - "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", - "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", - "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", - "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", - "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", - "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", - "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", - "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", - "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", - "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", - "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", - "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" - } - } - }, - "add_credit": { - "value": { - "ghsa_id": "GHSA-abcd-1234-efgh", - "cve_id": "CVE-2050-00000", - "url": "https://api.github.com/repos/repo/a-package/security-advisories/GHSA-abcd-1234-efgh", - "html_url": "https://github.com/repo/a-package/security/advisories/GHSA-abcd-1234-efgh", - "summary": "A short summary of the advisory.", - "description": "A detailed description of what the advisory entails.", - "severity": "critical", - "author": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "publisher": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "identifiers": [ - { - "type": "GHSA", - "value": "GHSA-abcd-1234-efgh" + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] }, - { - "type": "CVE", - "value": "CVE-2050-00000" - } - ], - "state": "published", - "created_at": "2020-01-01T00:00:00Z", - "updated_at": "2020-01-02T00:00:00Z", - "published_at": "2020-01-03T00:00:00Z", - "closed_at": null, - "withdrawn_at": null, - "submission": null, - "vulnerabilities": [ - { - "package": { - "ecosystem": "pip", - "name": "a-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.1", - "patched_versions": "1.0.1", - "vulnerable_functions": [ - "function1" + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" ] }, - { - "package": { - "ecosystem": "pip", - "name": "another-package" - }, - "vulnerable_version_range": ">= 1.0.0, < 1.0.2", - "patched_versions": "1.0.2", - "vulnerable_functions": [ - "function2" + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" ] - } - ], - "cvss_severities": { - "cvss_v3": { - "vector_string": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", - "score": 9.8 }, - "cvss_v4": { - "vector_string": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N", - "score": 9.3 - } - }, - "cwes": [ - { - "cwe_id": "CWE-123", - "name": "A CWE" - } - ], - "cwe_ids": [ - "CWE-123" - ], - "credits": [ - { - "login": "octocat", - "type": "analyst" - } - ], - "credits_detailed": [ - { - "user": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "type": "analyst", - "state": "accepted" - } - ], - "collaborating_users": [ - { - "login": "octokitten", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octokitten_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octokitten", - "html_url": "https://github.com/octokitten", - "followers_url": "https://api.github.com/users/octokitten/followers", - "following_url": "https://api.github.com/users/octokitten/following{/other_user}", - "gists_url": "https://api.github.com/users/octokitten/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octokitten/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octokitten/subscriptions", - "organizations_url": "https://api.github.com/users/octokitten/orgs", - "repos_url": "https://api.github.com/users/octokitten/repos", - "events_url": "https://api.github.com/users/octokitten/events{/privacy}", - "received_events_url": "https://api.github.com/users/octokitten/received_events", - "type": "User", - "site_admin": false - } - ], - "collaborating_teams": [ - { - "name": "Justice League", - "id": 1, - "node_id": "MDQ6VGVhbTE=", - "slug": "justice-league", - "description": "A great team.", - "privacy": "closed", - "notification_setting": "notifications_enabled", - "url": "https://api.github.com/teams/1", - "html_url": "https://github.com/orgs/github/teams/justice-league", - "members_url": "https://api.github.com/teams/1/members{/member}", - "repositories_url": "https://api.github.com/teams/1/repos", - "permission": "admin", - "parent": null - } - ], - "private_fork": { - "id": 217723378, - "node_id": "MDEwOlJlcG9zaXRvcnkyMTc3MjMzNzg=", - "name": "octo-repo-ghsa-abcd-1234-efgh", - "full_name": "octo-org/octo-repo-ghsa-abcd-1234-efgh", - "owner": { - "login": "octo-org", - "id": 6811672, - "node_id": "MDEyOk9yZ2FuaXphdGlvbjY4MTE2NzI=", - "avatar_url": "https://avatars3.githubusercontent.com/u/6811672?v=4", - "gravatar_id": "", - "url": "https://api.github.com/users/octo-org", - "html_url": "https://github.com/octo-org", - "followers_url": "https://api.github.com/users/octo-org/followers", - "following_url": "https://api.github.com/users/octo-org/following{/other_user}", - "gists_url": "https://api.github.com/users/octo-org/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octo-org/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octo-org/subscriptions", - "organizations_url": "https://api.github.com/users/octo-org/orgs", - "repos_url": "https://api.github.com/users/octo-org/repos", - "events_url": "https://api.github.com/users/octo-org/events{/privacy}", - "received_events_url": "https://api.github.com/users/octo-org/received_events", - "type": "Organization", - "site_admin": false + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] }, - "private": true, - "html_url": "https://github.com/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "description": null, - "fork": false, - "url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh", - "archive_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/comments{/number}", - "commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/commits{/sha}", - "compare_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/contributors", - "deployments_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/deployments", - "downloads_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/downloads", - "events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/events", - "forks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/forks", - "git_commits_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/tags{/sha}", - "hooks_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/hooks", - "issue_comment_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/issues{/number}", - "keys_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/labels{/name}", - "languages_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/languages", - "merges_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/merges", - "milestones_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/pulls{/number}", - "releases_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/releases{/id}", - "stargazers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/stargazers", - "statuses_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscribers", - "subscription_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/subscription", - "tags_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/tags", - "teams_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/teams", - "trees_url": "https://api.github.com/repos/octo-org/octo-repo-ghsa-abcd-1234-efgh/git/trees{/sha}" - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - }, - "examples": { - "invalid_state_transition": { - "value": { - "message": "Invalid state transition from `published` to `draft`." - } - }, - "update_severity_with_cvss_set": { - "value": { - "message": "Cannot update severity value when CVSS is set." - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "security-advisories", - "subcategory": "repository-advisories" - } - } - }, - "/repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve": { - "post": { - "summary": "Request a CVE for a repository security advisory", - "description": "If you want a CVE identification number for the security vulnerability in your project, and don't already have one, you can request a CVE identification number from GitHub. For more information see \"[Requesting a CVE identification number](https://docs.github.com/code-security/security-advisories/repository-security-advisories/publishing-a-repository-security-advisory#requesting-a-cve-identification-number-optional).\"\n\nYou may request a CVE for public repositories, but cannot do so for private repositories.\n\nIn order to request a CVE for a repository security advisory, the authenticated user must be a security manager or administrator of that repository.\n\nOAuth app tokens and personal access tokens (classic) need the `repo` or `repository_advisories:write` scope to use this endpoint.", - "tags": [ - "security-advisories" - ], - "operationId": "security-advisories/create-repository-advisory-cve-request", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#request-a-cve-for-a-repository-security-advisory" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ghsa_id", - "description": "The GHSA (GitHub Security Advisory) identifier of the advisory.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "202": { - "description": "Accepted", - "content": { - "application/json": { - "schema": { - "type": "object" - }, - "examples": { - "default": { - "value": null - } - } - } - } - }, - "400": { - "description": "Bad Request", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - }, - "application/scim+json": { - "schema": { - "title": "Scim Error", - "description": "Scim Error", - "type": "object", - "properties": { - "message": { - "type": [ - "string", - "null" - ] - }, - "documentation_url": { - "type": [ - "string", - "null" - ] - }, - "detail": { - "type": [ - "string", - "null" - ] - }, - "status": { - "type": "integer" - }, - "scimType": { - "type": [ - "string", - "null" - ] - }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - }, - "403": { - "description": "Forbidden", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "422": { - "description": "Validation failed, or the endpoint has been spammed.", - "content": { - "application/json": { - "schema": { - "title": "Validation Error", - "description": "Validation Error", - "type": "object", - "required": [ - "message", - "documentation_url" - ], - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "errors": { - "type": "array", - "items": { - "type": "object", - "required": [ - "code" - ], - "properties": { - "resource": { - "type": "string" - }, - "field": { - "type": "string" - }, - "message": { - "type": "string" - }, - "code": { - "type": "string" - }, - "index": { - "type": "integer" - }, - "value": { - "oneOf": [ - { - "type": [ - "string", - "null" - ] - }, - { - "type": [ - "integer", - "null" - ] - }, - { - "type": [ - "array", - "null" - ], - "items": { - "type": "string" - } - } - ] - } - } - } - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "security-advisories", - "subcategory": "repository-advisories" - } - } - }, - "/repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks": { - "post": { - "summary": "Create a temporary private fork", - "description": "Create a temporary private fork to collaborate on fixing a security vulnerability in your repository.\n\n> [!NOTE]\n> Forking a repository happens asynchronously. You may have to wait up to 5 minutes before you can access the fork.", - "tags": [ - "security-advisories" - ], - "operationId": "security-advisories/create-fork", - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/security-advisories/repository-advisories#create-a-temporary-private-fork" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "ghsa_id", - "description": "The GHSA (GitHub Security Advisory) identifier of the advisory.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - } - ], - "responses": { - "202": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "title": "Full Repository", - "description": "Full Repository", - "type": "object", - "properties": { - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1296269 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "type": "string", - "examples": [ - "Hello-World" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { "type": [ "string", "null" ] }, - "email": { - "type": [ - "string", - "null" + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true ] }, - "login": { - "type": "string", + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", "examples": [ - "octocat" + true ] }, - "id": { - "type": "integer", - "format": "int64", + "has_pages": { + "type": "boolean" + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", "examples": [ - 1 + true ] }, - "node_id": { - "type": "string", + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", "examples": [ - "MDQ6VXNlcjE=" + true ] }, - "avatar_url": { + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", "type": "string", - "format": "uri", + "enum": [ + "all", + "collaborators_only" + ], "examples": [ - "https://github.com/images/error/octocat_happy.gif" + "all" ] }, - "gravatar_id": { + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { "type": [ "string", "null" ], + "format": "date-time", "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" + "2011-01-26T19:06:43Z" ] }, - "html_url": { - "type": "string", - "format": "uri", + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "https://github.com/octocat" + "2011-01-26T19:01:12Z" ] }, - "followers_url": { - "type": "string", - "format": "uri", + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", "examples": [ - "https://api.github.com/users/octocat/followers" + "2011-01-26T19:14:43Z" ] }, - "following_url": { - "type": "string", + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + true ] }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] + "temp_clone_token": { + "type": "string" }, - "starred_url": { - "type": "string", + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + true ] }, - "subscriptions_url": { - "type": "string", - "format": "uri", + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + false ] }, - "organizations_url": { - "type": "string", - "format": "uri", + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/orgs" + false ] }, - "repos_url": { - "type": "string", - "format": "uri", + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/repos" + false ] }, - "events_url": { + "squash_merge_commit_title": { "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." }, - "received_events_url": { + "squash_merge_commit_message": { "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." }, - "type": { + "merge_commit_title": { "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." }, - "starred_at": { + "merge_commit_message": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." }, - "user_view_type": { - "type": "string", + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", "examples": [ - "public" + true ] - } - }, - "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" - ] - }, - "private": { - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" - ] - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "clone_url": { - "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" - ] - }, - "hooks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" - ] - }, - "svn_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "type": "boolean", - "examples": [ - true - ] - }, - "topics": { - "type": "array", - "items": { - "type": "string" - }, - "examples": [ - "octocat", - "atom", - "electron", - "API" - ] - }, - "has_issues": { - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_discussions": { - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "type": "boolean", - "examples": [ - true - ] - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", - "type": "string", - "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "type": "string", - "examples": [ - "public" - ] - }, - "pushed_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": "string", - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" }, - "maintain": { + "allow_forking": { + "description": "Whether to allow forking this repo", "type": "boolean" }, - "push": { + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, "type": "boolean" }, - "triage": { - "type": "boolean" + "open_issues": { + "type": "integer" }, - "pull": { - "type": "boolean" - } - }, - "required": [ - "admin", - "pull", - "push" - ] - }, - "allow_rebase_merge": { - "type": "boolean", - "examples": [ - true - ] - }, - "template_repository": { - "anyOf": [ - { - "type": "null" + "watchers": { + "type": "integer" }, - { - "title": "Repository", - "description": "A repository on GitHub.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "description": "The name of the repository.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "forks": { - "type": "integer" - }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } - }, - "required": [ - "admin", - "pull", - "push" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { "type": "boolean" }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" - ] - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "clone_url": { - "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" - ] - }, - "hooks_url": { + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "forks": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "anonymous_access_enabled": { + "description": "Whether anonymous git access is allowed.", + "default": true, + "type": "boolean" + }, + "code_of_conduct": { + "title": "Code Of Conduct Simple", + "description": "Code of Conduct Simple", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/github/docs/community/code_of_conduct" + ] + }, + "key": { + "type": "string", + "examples": [ + "citizen_code_of_conduct" + ] + }, + "name": { + "type": "string", + "examples": [ + "Citizen Code of Conduct" + ] + }, + "html_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com/github/docs/blob/main/CODE_OF_CONDUCT.md" + ] + } + }, + "required": [ + "url", + "key", + "name", + "html_url" + ] + }, + "security_and_analysis": { + "type": [ + "object", + "null" + ], + "properties": { + "advanced_security": { + "description": "Enable or disable GitHub Advanced Security for the repository.\n\nFor standalone Code Scanning or Secret Protection products, this parameter cannot be used.\n", + "type": "object", + "properties": { + "status": { "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" + "enum": [ + "enabled", + "disabled" ] - }, - "svn_url": { + } + } + }, + "code_security": { + "type": "object", + "properties": { + "status": { "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 + "enum": [ + "enabled", + "disabled" ] - }, - "default_branch": { - "description": "The default branch of the repository.", + } + } + }, + "dependabot_security_updates": { + "description": "Enable or disable Dependabot security updates for the repository.", + "type": "object", + "properties": { + "status": { + "description": "The enablement status of Dependabot security updates for the repository.", "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "topics": { - "type": "array", - "items": { - "type": "string" - } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true + "enum": [ + "enabled", + "disabled" ] - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", + } + } + }, + "secret_scanning": { + "type": "object", + "properties": { + "status": { "type": "string", "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false + "enabled", + "disabled" ] - }, - "squash_merge_commit_title": { + } + } + }, + "secret_scanning_push_protection": { + "type": "object", + "properties": { + "status": { "type": "string", "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_non_provider_patterns": { + "type": "object", + "properties": { + "status": { "type": "string", "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_ai_detection": { + "type": "object", + "properties": { + "status": { "type": "string", "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_delegated_alert_dismissal": { + "type": "object", + "properties": { + "status": { "type": "string", "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true + "enabled", + "disabled" ] - }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "starred_at": { + } + } + }, + "secret_scanning_delegated_bypass": { + "type": "object", + "properties": { + "status": { "type": "string", - "examples": [ - "\"2020-07-09T00:17:42Z\"" + "enum": [ + "enabled", + "disabled" ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { - "type": "string" + } + } + }, + "secret_scanning_delegated_bypass_options": { + "type": "object", + "properties": { + "reviewers": { + "type": "array", + "description": "The bypass reviewers for secret scanning delegated bypass", + "items": { + "type": "object", + "required": [ + "reviewer_id", + "reviewer_type" + ], + "properties": { + "reviewer_id": { + "type": "integer", + "description": "The ID of the team or role selected as a bypass reviewer" + }, + "reviewer_type": { + "type": "string", + "description": "The type of the bypass reviewer", + "enum": [ + "TEAM", + "ROLE" + ] + }, + "mode": { + "type": "string", + "description": "The bypass mode for the reviewer", + "enum": [ + "ALWAYS", + "EXEMPT" + ], + "default": "ALWAYS" + } } } } - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] + } } - ] + } + }, + "custom_properties": { + "type": "object", + "description": "The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values.", + "additionalProperties": true + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "has_discussions", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at", + "network_count", + "subscribers_count" + ] + }, + "examples": { + "default": { + "value": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://github.com/licenses/mit" + }, + "language": null, + "forks_count": 9, + "forks": 9, + "stargazers_count": 80, + "watchers_count": 80, + "watchers": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "open_issues": 0, + "is_template": false, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "pull": true, + "push": false, + "admin": false + }, + "allow_rebase_merge": true, + "template_repository": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World-Template", + "full_name": "octocat/Hello-World-Template", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World-Template", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World-Template", + "archive_url": "https://api.github.com/repos/octocat/Hello-World-Template/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World-Template/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World-Template/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World-Template/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World-Template/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World-Template/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World-Template/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World-Template/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World-Template/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World-Template/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World-Template/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World-Template/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World-Template.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World-Template/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World-Template/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World-Template/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World-Template/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World-Template/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World-Template/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World-Template/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World-Template/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World-Template.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World-Template/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World-Template/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World-Template/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World-Template.git", + "mirror_url": "git:git.example.com/octocat/Hello-World-Template", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World-Template/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World-Template", + "homepage": "https://github.com", + "language": null, + "forks": 9, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "watchers": 80, + "size": 108, + "default_branch": "master", + "open_issues": 0, + "open_issues_count": 0, + "is_template": true, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://api.github.com/licenses/mit" + }, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0 + }, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "allow_forking": true, + "web_commit_signoff_required": false, + "subscribers_count": 42, + "network_count": 0, + "organization": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "Organization", + "site_admin": false + }, + "parent": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://api.github.com/licenses/mit" + }, + "forks": 1, + "open_issues": 1, + "watchers": 1 + }, + "source": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true + }, + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://api.github.com/licenses/mit" + }, + "forks": 1, + "open_issues": 1, + "watchers": 1 + } + } + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "temp_clone_token": { + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { "type": [ "string", "null" ] }, - "allow_squash_merge": { - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "type": "boolean", - "examples": [ - false + "documentation_url": { + "type": [ + "string", + "null" ] }, - "allow_merge_commit": { - "type": "boolean", - "examples": [ - true + "detail": { + "type": [ + "string", + "null" ] }, - "allow_update_branch": { - "type": "boolean", - "examples": [ - true - ] + "status": { + "type": "integer" }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit).", - "examples": [ - "PR_TITLE" + "scimType": { + "type": [ + "string", + "null" ] }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message.", - "examples": [ - "PR_BODY" - ] + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n - `PR_TITLE` - default to the pull request's title.\n - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).", - "examples": [ - "PR_TITLE" - ] + "documentation_url": { + "type": "string" }, - "merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message.", - "examples": [ - "PR_BODY" - ] + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "allow_forking": { - "type": "boolean", - "examples": [ - true - ] + "documentation_url": { + "type": "string" }, - "web_commit_signoff_required": { - "type": "boolean", - "examples": [ - false - ] + "url": { + "type": "string" }, - "subscribers_count": { - "type": "integer", - "examples": [ - 42 - ] + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "network_count": { - "type": "integer", - "examples": [ - 0 - ] + "documentation_url": { + "type": "string" }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] + "url": { + "type": "string" }, - "organization": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "security-advisories", + "subcategory": "repository-advisories" + } + } + }, + "/repos/{owner}/{repo}/stacks": { + "get": { + "summary": "List pull request stacks", + "description": "Lists pull request stacks in a repository.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/list", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_request", + "description": "Filter to the stack containing this repository pull request number.", + "in": "query", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Pull Request Stack Minimal", + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "type": "object", + "required": [ + "number", + "state", + "draft", + "merged_at", + "head" + ], + "properties": { + "number": { + "type": "integer" }, - "type": { + "state": { "type": "string", - "examples": [ - "User" + "enum": [ + "open", + "closed" ] }, - "site_admin": { + "draft": { "type": "boolean" }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "parent": { - "title": "Repository", - "description": "A repository on GitHub.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "description": "The name of the repository.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" }, - { - "title": "License Simple", - "description": "License Simple", + "head": { "type": "object", + "required": [ + "ref", + "sha" + ], "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] + "ref": { + "type": "string" }, - "html_url": { - "type": "string", - "format": "uri" + "sha": { + "type": "string" } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] + } } - ] - }, - "forks": { - "type": "integer" + } + } + } + } + } + }, + "examples": { + "default": { + "value": [ + { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" + "pull_requests": [ + { + "number": 101, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11" } }, - "required": [ - "admin", - "pull", - "push" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + { + "number": 102, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22" } + } + ], + "open": true, + "created_at": "2026-04-15T10:00:00Z" + } + ] + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "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" - ] - }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" - ] - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "clone_url": { - "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" - ] - }, - "hooks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" - ] - }, - "svn_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "description": "The default branch of the repository.", - "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + }, + "post": { + "summary": "Create a pull request stack", + "description": "Creates a stack from an ordered list of pull request numbers. Provide the pull\nrequest numbers from the bottom of the stack to the top. Each pull request's\nbase ref must match the previous pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/create", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers forming the stack from bottom to top.", + "items": { + "type": "integer" + }, + "minItems": 2, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 101, + 102, + 103 + ] + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "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", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + } + }, + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + } + } + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } }, - "topics": { - "type": "array", - "items": { + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't form a\nvalid stack.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] + } + } + ] } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", - "type": "string", - "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true + } + } + } + } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 ] - }, - "temp_clone_token": { + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't form a linear stack", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}": { + "get": { + "summary": "Get a pull request stack", + "description": "Gets a pull request stack by providing its stack number.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/get", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:42Z\"" - ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "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", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + } }, - "lexical_commit_sha": { - "type": "string" + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } } } - } + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] - }, - "source": { - "title": "Repository", - "description": "A repository on GitHub.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "description": "The name of the repository.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "forks": { - "type": "integer" - }, - "permissions": { - "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" }, - "required": [ - "admin", - "pull", - "push" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" } }, - "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" - ] - }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" - ] - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "clone_url": { - "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" - ] - }, - "hooks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" - ] - }, - "svn_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "description": "The default branch of the repository.", - "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "topics": { - "type": "array", - "items": { - "type": "string" + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", - "type": "string", - "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:42Z\"" - ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { - "type": "string" + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" } } } - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "forks": { - "type": "integer" + "documentation_url": { + "type": "string" }, - "master_branch": { + "url": { "type": "string" }, - "open_issues": { + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/add": { + "post": { + "summary": "Add pull requests to a pull request stack", + "description": "Appends an ordered list of pull request numbers onto the top of an existing\nstack. Provide only the pull requests you want to add, from the current top of\nthe stack upward. The first new pull request's base ref must match the current\ntop pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/add", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers to append to the stack, from the current top upward.", + "items": { "type": "integer" }, - "watchers": { + "minItems": 1, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 104, + 102 + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { "type": "integer" }, - "anonymous_access_enabled": { - "description": "Whether anonymous git access is allowed.", - "default": true, - "type": "boolean" + "number": { + "type": "integer" }, - "code_of_conduct": { - "title": "Code Of Conduct Simple", - "description": "Code of Conduct Simple", + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/github/docs/community/code_of_conduct" - ] - }, - "key": { - "type": "string", - "examples": [ - "citizen_code_of_conduct" - ] - }, - "name": { - "type": "string", - "examples": [ - "Citizen Code of Conduct" - ] - }, - "html_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com/github/docs/blob/main/CODE_OF_CONDUCT.md" - ] - } - }, "required": [ - "url", - "key", - "name", - "html_url" - ] - }, - "security_and_analysis": { - "type": [ - "object", - "null" + "ref" ], "properties": { - "advanced_security": { - "description": "Enable or disable GitHub Advanced Security for the repository.\n\nFor standalone Code Scanning or Secret Protection products, this parameter cannot be used.\n", - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "code_security": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "dependabot_security_updates": { - "description": "Enable or disable Dependabot security updates for the repository.", - "type": "object", - "properties": { - "status": { - "description": "The enablement status of Dependabot security updates for the repository.", - "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" - ] - } - } - }, - "secret_scanning_non_provider_patterns": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "secret_scanning_ai_detection": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "secret_scanning_delegated_alert_dismissal": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "secret_scanning_delegated_bypass": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "secret_scanning_delegated_bypass_options": { - "type": "object", - "properties": { - "reviewers": { - "type": "array", - "description": "The bypass reviewers for secret scanning delegated bypass", - "items": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { "type": "object", - "required": [ - "reviewer_id", - "reviewer_type" - ], "properties": { - "reviewer_id": { - "type": "integer", - "description": "The ID of the team or role selected as a bypass reviewer" + "ref": { + "type": "string" }, - "reviewer_type": { - "type": "string", - "description": "The type of the bypass reviewer", - "enum": [ - "TEAM", - "ROLE" + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + }, + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string" }, - "mode": { - "type": "string", - "description": "The bypass mode for the reviewer", - "enum": [ - "ALWAYS", - "EXEMPT" - ], - "default": "ALWAYS" + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] } - } + }, + "required": [ + "ref", + "sha", + "repo" + ] } - } - } - } - } - }, - "custom_properties": { - "type": "object", - "description": "The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values.", - "additionalProperties": true - } - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "has_discussions", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at", - "network_count", - "subscribers_count" - ] - }, - "examples": { - "default": { - "value": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://github.com/licenses/mit" - }, - "language": null, - "forks_count": 9, - "forks": 9, - "stargazers_count": 80, - "watchers_count": 80, - "watchers": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "open_issues": 0, - "is_template": false, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "pull": true, - "push": false, - "admin": false - }, - "allow_rebase_merge": true, - "template_repository": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World-Template", - "full_name": "octocat/Hello-World-Template", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World-Template", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World-Template", - "archive_url": "https://api.github.com/repos/octocat/Hello-World-Template/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World-Template/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World-Template/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World-Template/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World-Template/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World-Template/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World-Template/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World-Template/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World-Template/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World-Template/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World-Template/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World-Template/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World-Template.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World-Template/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World-Template/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World-Template/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World-Template/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World-Template/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World-Template/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World-Template/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World-Template/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World-Template.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World-Template/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World-Template/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World-Template/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World-Template.git", - "mirror_url": "git:git.example.com/octocat/Hello-World-Template", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World-Template/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World-Template", - "homepage": "https://github.com", - "language": null, - "forks": 9, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "watchers": 80, - "size": 108, - "default_branch": "master", - "open_issues": 0, - "open_issues_count": 0, - "is_template": true, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://api.github.com/licenses/mit" - }, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0 - }, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "allow_forking": true, - "web_commit_signoff_required": false, - "subscribers_count": 42, - "network_count": 0, - "organization": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "Organization", - "site_admin": false - }, - "parent": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://api.github.com/licenses/mit" - }, - "forks": 1, - "open_issues": 1, - "watchers": 1 + }, + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + } + } + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" }, - "source": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://api.github.com/licenses/mit" + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } }, - "forks": 1, - "open_issues": 1, - "watchers": 1 - } + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] } } } } } }, - "400": { - "description": "Bad Request", + "404": { + "description": "Resource not found", "content": { "application/json": { "schema": { @@ -694518,45 +704939,39 @@ } } } - }, - "application/scim+json": { + } + } + }, + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", + "content": { + "application/json": { "schema": { - "title": "Scim Error", - "description": "Scim Error", + "title": "Basic Error", + "description": "Basic Error", "type": "object", "properties": { "message": { - "type": [ - "string", - "null" - ] + "type": "string" }, "documentation_url": { - "type": [ - "string", - "null" - ] + "type": "string" }, - "detail": { - "type": [ - "string", - "null" - ] + "url": { + "type": "string" }, "status": { - "type": "integer" - }, - "scimType": { - "type": [ - "string", - "null" - ] - }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } + "type": "string" + } + } + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "status": "409" } } } @@ -694564,7 +704979,7 @@ } }, "422": { - "description": "Validation failed, or the endpoint has been spammed.", + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't be appended\nto the stack.", "content": { "application/json": { "schema": { @@ -694625,7 +705040,14 @@ "null" ], "items": { - "type": "string" + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] } } ] @@ -694634,12 +705056,537 @@ } } } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 + ] + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't continue the stack linearly", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + } } } } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": { + "post": { + "summary": "Remove pull requests from a pull request stack", + "description": "Removes the unmerged pull requests from a stack. Pull requests that cannot be\nunstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated\nstack is returned with a `200`. When no pull requests remain, the stack is\ndissolved and a `204` is returned.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/unstack", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } }, - "403": { - "description": "Forbidden", + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "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", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + } + }, + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + } + } + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", "content": { "application/json": { "schema": { @@ -694664,8 +705611,8 @@ } } }, - "404": { - "description": "Resource not found", + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", "content": { "application/json": { "schema": { @@ -694686,16 +705633,113 @@ "type": "string" } } + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack", + "status": "409" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the stack can't be unstacked because every\npull request in it is locked and cannot be removed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + }, + "examples": { + "cannot_be_removed": { + "summary": "Every pull request in the stack is locked and can't be removed", + "value": { + "message": "Pull requests in this stack cannot be removed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + } + } } } } + }, + "204": { + "description": "A header with no content is returned." } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "security-advisories", - "subcategory": "repository-advisories" + "category": "pulls", + "subcategory": "stacks" } } }, diff --git a/descriptions-next/api.github.com/dereferenced/api.github.com.2026-03-10.deref.yaml b/descriptions-next/api.github.com/dereferenced/api.github.com.2026-03-10.deref.yaml index 55e2bef9db..3aa602695a 100644 --- a/descriptions-next/api.github.com/dereferenced/api.github.com.2026-03-10.deref.yaml +++ b/descriptions-next/api.github.com/dereferenced/api.github.com.2026-03-10.deref.yaml @@ -14674,7 +14674,7 @@ paths: properties: action: type: string - discussion: &782 + discussion: &783 title: Discussion description: A Discussion in a repository. type: object @@ -15461,7 +15461,7 @@ paths: - hooray - eyes - rocket - sub_issues_summary: &700 + sub_issues_summary: &701 title: Sub-issues Summary type: object properties: @@ -15591,7 +15591,7 @@ paths: - url - created_at - updated_at - issue_dependencies_summary: &701 + issue_dependencies_summary: &702 title: Issue Dependencies Summary type: object properties: @@ -22900,7 +22900,7 @@ paths: parameters: - *75 - *117 - - &760 + - &761 name: month description: If specified, only return results for a single month. The value of `month` is an integer between `1` and `12`. If no year is specified the @@ -23012,7 +23012,7 @@ paths: - *117 - *118 - *119 - - &761 + - &762 name: repository description: The repository name to query for usage in the format owner/repository. in: query @@ -23020,7 +23020,7 @@ paths: schema: type: string - *122 - - &762 + - &763 name: sku description: The SKU to query for usage. in: query @@ -31064,12 +31064,12 @@ paths: required: - subject_digests examples: - default: &741 + default: &742 value: subject_digests: - sha256:abc123 - sha512:def456 - withPredicateType: &742 + withPredicateType: &743 value: subject_digests: - sha256:abc123 @@ -31114,7 +31114,7 @@ paths: description: The cursor to the previous page. description: Information about the current page. examples: - default: &743 + default: &744 value: attestations_subject_digests: - sha256:abc: @@ -32544,18 +32544,18 @@ paths: description: |- The Git reference, formatted as `refs/pull//merge`, `refs/pull//head`, `refs/heads/` or simply ``. - analysis_key: &446 + analysis_key: &447 type: string description: Identifies the configuration under which the analysis was executed. For example, in GitHub Actions this includes the workflow filename and job name. - environment: &447 + environment: &448 type: string description: Identifies the variable values associated with the environment in which the analysis that generated this alert instance was performed, such as the language that was analyzed. - category: &448 + category: &449 type: string description: Identifies the configuration under which the analysis was executed. Used to distinguish between multiple @@ -32575,7 +32575,7 @@ paths: with placeholder links for related locations replaced by links to the relevant code. Only populated when related locations are available for the alert instance. - location: &449 + location: &450 type: object description: Describe a region within a file for the alert. properties: @@ -32596,7 +32596,7 @@ paths: description: |- Classifications that have been applied to the file that triggered the alert. For example identifying it as documentation, or a generated file. - items: &450 + items: &451 type: - string - 'null' @@ -33931,7 +33931,7 @@ paths: machine: anyOf: - type: 'null' - - &462 + - &463 type: object title: Codespace machine description: A description of the machine powering a codespace. @@ -34883,7 +34883,7 @@ paths: - updated_at - visibility examples: - default: &463 + default: &464 value: total_count: 2 secrets: @@ -34921,7 +34921,7 @@ paths: description: Response content: application/json: - schema: &464 + schema: &465 title: CodespacesPublicKey description: The public key used for setting Codespaces secrets. type: object @@ -34956,7 +34956,7 @@ paths: - key_id - key examples: - default: &465 + default: &466 value: key_id: '012345678912345678' key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 @@ -34988,7 +34988,7 @@ paths: application/json: schema: *196 examples: - default: &467 + default: &468 value: name: GH_TOKEN created_at: '2019-08-10T14:59:22Z' @@ -42026,7 +42026,7 @@ paths: application/json: schema: *251 examples: - default: &461 + default: &462 value: id: 1 name: monalisa-octocat-hello-world-g4wpq6h95q @@ -43289,7 +43289,7 @@ paths: parameters: - *75 - *258 - - &723 + - &724 name: repo_name description: repo_name parameter in: path @@ -44237,7 +44237,7 @@ paths: - nuget - container - *75 - - &724 + - &725 name: visibility description: |- The selected visibility of the packages. This parameter is optional and only filters an existing result set. @@ -44278,7 +44278,7 @@ paths: default: *264 '403': *27 '401': *23 - '400': &726 + '400': &727 description: The value of `per_page` multiplied by `page` cannot be greater than 10000. x-github: @@ -46520,7 +46520,7 @@ paths: latest_status_update: anyOf: - type: 'null' - - &810 + - &811 title: Projects v2 Status Update description: An status update belonging to a project type: object @@ -46794,7 +46794,7 @@ paths: content: oneOf: - *83 - - &476 + - &437 title: Pull Request Simple description: Pull Request Simple type: object @@ -47446,7 +47446,7 @@ paths: - updated_at - project_url examples: - default: &747 + default: &748 value: - id: 12345 node_id: PVTF_lADOABCD1234567890 @@ -47623,7 +47623,7 @@ paths: description: The options available for single select fields. At least one option must be provided when creating a single select field. - items: &748 + items: &749 type: object properties: name: @@ -47660,7 +47660,7 @@ paths: description: The field's data type. enum: - iteration - iteration_configuration: &749 + iteration_configuration: &750 type: object description: The configuration for iteration fields. properties: @@ -47710,7 +47710,7 @@ paths: value: name: Due date data_type: date - single_select_field: &750 + single_select_field: &751 summary: Create a single select field value: name: Priority @@ -47737,7 +47737,7 @@ paths: description: raw: High priority items html: High priority items - iteration_field: &751 + iteration_field: &752 summary: Create an iteration field value: name: Sprint @@ -47763,7 +47763,7 @@ paths: application/json: schema: *284 examples: - text_field: &752 + text_field: &753 value: id: 24680 node_id: PVTF_lADOABCD2468024680 @@ -47772,7 +47772,7 @@ paths: project_url: https://api.github.com/projects/67890 created_at: '2022-05-15T08:00:00Z' updated_at: '2022-05-15T08:00:00Z' - number_field: &753 + number_field: &754 value: id: 13579 node_id: PVTF_lADOABCD1357913579 @@ -47781,7 +47781,7 @@ paths: project_url: https://api.github.com/projects/67890 created_at: '2022-06-01T14:30:00Z' updated_at: '2022-06-01T14:30:00Z' - date_field: &754 + date_field: &755 value: id: 98765 node_id: PVTF_lADOABCD9876598765 @@ -47790,7 +47790,7 @@ paths: project_url: https://api.github.com/projects/67890 created_at: '2022-06-10T09:15:00Z' updated_at: '2022-06-10T09:15:00Z' - single_select_field: &755 + single_select_field: &756 value: id: 12345 node_id: PVTF_lADOABCD1234567890 @@ -47824,7 +47824,7 @@ paths: raw: High priority items created_at: '2022-04-28T12:00:00Z' updated_at: '2022-04-28T12:00:00Z' - iteration_field: &756 + iteration_field: &757 value: id: 11223 node_id: PVTF_lADOABCD1122311223 @@ -47870,7 +47870,7 @@ paths: url: https://docs.github.com/rest/projects/fields#get-project-field-for-organization parameters: - *281 - - &757 + - &758 name: field_id description: The unique identifier of the field. in: path @@ -47885,7 +47885,7 @@ paths: application/json: schema: *284 examples: - default: &758 + default: &759 value: id: 12345 node_id: PVTF_lADOABCD1234567890 @@ -49096,7 +49096,7 @@ paths: description: Response for creating a view in an organization-owned project. content: application/json: - schema: &738 + schema: &739 title: Projects v2 View description: A view inside a projects v2 project type: object @@ -49279,7 +49279,7 @@ paths: parameters: - *281 - *75 - - &759 + - &760 name: view_number description: The number that identifies the project view. in: path @@ -57249,7 +57249,7 @@ paths: application/json: schema: type: array - items: &703 + items: &704 title: Team Member description: A user that is a member of a team, including their role on the team and whether the membership is inherited from @@ -57392,7 +57392,7 @@ paths: - type - url examples: - default: &704 + default: &705 value: - login: octocat id: 1 @@ -57479,7 +57479,7 @@ paths: - state - url examples: - response-if-user-is-a-team-maintainer: &705 + response-if-user-is-a-team-maintainer: &706 summary: Response if user is a team maintainer value: url: https://api.github.com/teams/1/memberships/octocat @@ -57544,7 +57544,7 @@ paths: application/json: schema: *339 examples: - response-if-users-membership-with-team-is-now-pending: &706 + response-if-users-membership-with-team-is-now-pending: &707 summary: Response if user's membership with team is now pending value: url: https://api.github.com/teams/1/memberships/octocat @@ -57658,7 +57658,7 @@ paths: description: Alternative response with repository permissions content: application/json: - schema: &707 + schema: &708 title: Team Repository description: A team's access to a repository. type: object @@ -58379,7 +58379,7 @@ paths: type: array items: *201 examples: - response-if-child-teams-exist: &708 + response-if-child-teams-exist: &709 value: - id: 2 node_id: MDQ6VGVhbTI= @@ -67131,7 +67131,7 @@ paths: properties: name: type: string - commit: &472 + commit: &473 title: Commit description: Commit type: object @@ -70454,7 +70454,7 @@ paths: check. type: array items: *86 - deployment: &771 + deployment: &772 title: Deployment description: A deployment created as the result of an Actions check run from a workflow that references an environment @@ -72766,7 +72766,7 @@ paths: - *427 - *19 - *17 - - &444 + - &445 name: ref description: The Git reference for the results you want to list. The `ref` for a branch can be formatted either as `refs/heads/` or simply @@ -72774,7 +72774,7 @@ paths: in: query required: false schema: *428 - - &445 + - &446 name: pr description: The number of the pull request for the results you want to list. in: query @@ -72964,7 +72964,7 @@ paths: classifications: [] instances_url: https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/3/instances '304': *36 - '403': &437 + '403': &438 description: Response if GitHub Advanced Security is not enabled for this repository content: @@ -72993,7 +72993,7 @@ paths: parameters: - *340 - *341 - - &438 + - &439 name: alert_number in: path description: The number that identifies an alert. You can find this at the @@ -73007,7 +73007,7 @@ paths: description: Response content: application/json: - schema: &439 + schema: &440 type: object properties: number: *181 @@ -73095,6 +73095,10 @@ paths: assignees: type: array items: *4 + linked_pull_requests: + description: Pull requests linked to this alert. + type: array + items: *437 required: - number - created_at @@ -73183,7 +73187,7 @@ paths: - test instances_url: https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances '304': *36 - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -73205,7 +73209,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 requestBody: required: true content: @@ -73249,7 +73253,7 @@ paths: description: Response content: application/json: - schema: *439 + schema: *440 examples: default: value: @@ -73325,7 +73329,7 @@ paths: - test instances_url: https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances '400': *14 - '403': &443 + '403': &444 description: Response if the repository is archived or if GitHub Advanced Security is not enabled for this repository content: @@ -73354,13 +73358,13 @@ paths: parameters: - *340 - *341 - - *438 + - *439 responses: '200': description: Response content: application/json: - schema: &440 + schema: &441 type: object properties: status: @@ -73387,13 +73391,13 @@ paths: - description - started_at examples: - default: &441 + default: &442 value: status: success description: This fixes an XSS vulnerability by escaping the user input. started_at: '2024-02-14T12:29:18Z' - '400': &442 + '400': &443 description: Bad Request content: application/json: @@ -73404,7 +73408,7 @@ paths: message: The alert_number is not valid documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#get-the-status-of-an-autofix-for-a-code-scanning-alert status: '400' - '403': *437 + '403': *438 '404': *6 '500': *54 x-github: @@ -73431,27 +73435,27 @@ paths: parameters: - *340 - *341 - - *438 + - *439 responses: '200': description: OK content: application/json: - schema: *440 + schema: *441 examples: - default: *441 + default: *442 '202': description: Accepted content: application/json: - schema: *440 + schema: *441 examples: default: value: status: pending description: started_at: '2024-02-14T12:29:18Z' - '400': *442 + '400': *443 '403': description: Response if the repository is archived, if GitHub Advanced Security is not enabled for this repository or if rate limit is exceeded @@ -73485,7 +73489,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 requestBody: required: false content: @@ -73531,8 +73535,8 @@ paths: value: target_ref: refs/heads/main sha: 178f4f6090b3fccad4a65b3e83d076a622d59652 - '400': *442 - '403': *443 + '400': *443 + '403': *444 '404': *6 '422': description: Unprocessable Entity @@ -73558,11 +73562,11 @@ paths: parameters: - *340 - *341 - - *438 + - *439 - *19 - *17 - - *444 - *445 + - *446 responses: '200': description: Response @@ -73574,9 +73578,9 @@ paths: type: object properties: ref: *428 - analysis_key: *446 - environment: *447 - category: *448 + analysis_key: *447 + environment: *448 + category: *449 state: type: - string @@ -73593,7 +73597,7 @@ paths: properties: text: type: string - location: *449 + location: *450 html_url: type: string classifications: @@ -73601,7 +73605,7 @@ paths: description: |- Classifications that have been applied to the file that triggered the alert. For example identifying it as documentation, or a generated file. - items: *450 + items: *451 examples: default: value: @@ -73638,7 +73642,7 @@ paths: end_column: 50 classifications: - source - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -73678,7 +73682,7 @@ paths: - *427 - *19 - *17 - - *445 + - *446 - name: ref in: query description: The Git reference for the analyses you want to list. The `ref` @@ -73690,7 +73694,7 @@ paths: in: query description: Filter analyses belonging to the same SARIF upload. required: false - schema: &451 + schema: &452 type: string description: An identifier for the upload. examples: @@ -73712,23 +73716,23 @@ paths: application/json: schema: type: array - items: &452 + items: &453 type: object properties: ref: *428 - commit_sha: &460 + commit_sha: &461 description: The SHA of the commit to which the analysis you are uploading relates. type: string minLength: 40 maxLength: 64 pattern: "^([0-9a-fA-F]{40}(?:[0-9a-fA-F]{24})?)$" - analysis_key: *446 + analysis_key: *447 environment: type: string description: Identifies the variable values associated with the environment in which this analysis was performed. - category: *448 + category: *449 error: type: string examples: @@ -73753,7 +73757,7 @@ paths: description: The REST API URL of the analysis resource. format: uri readOnly: true - sarif_id: *451 + sarif_id: *452 tool: *435 deletable: type: boolean @@ -73816,7 +73820,7 @@ paths: version: 1.2.0 deletable: true warning: '' - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -73866,7 +73870,7 @@ paths: description: Response content: application/json: - schema: *452 + schema: *453 examples: response: summary: application/json response @@ -73920,7 +73924,7 @@ paths: properties: - github/alertNumber: 2 - github/alertUrl: https://api.github.com/repos/monalisa/monalisa/code-scanning/alerts/2 - '403': *437 + '403': *438 '404': *6 '422': description: Response if analysis could not be processed @@ -74064,7 +74068,7 @@ paths: next_analysis_url: https://api.github.com/repos/octocat/hello-world/code-scanning/analyses/41 confirm_delete_url: https://api.github.com/repos/octocat/hello-world/code-scanning/analyses/41?confirm_delete '400': *14 - '403': *443 + '403': *444 '404': *6 '503': *115 x-github: @@ -74095,7 +74099,7 @@ paths: application/json: schema: type: array - items: &453 + items: &454 title: CodeQL Database description: A CodeQL database. type: object @@ -74207,7 +74211,7 @@ paths: updated_at: '2022-09-12T12:14:32Z' url: https://api.github.com/repos/octocat/Hello-World/code-scanning/codeql/databases/ruby commit_oid: 1927de39fefa25a9d0e64e3f540ff824a72f538c - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -74249,7 +74253,7 @@ paths: description: Response content: application/json: - schema: *453 + schema: *454 examples: default: value: @@ -74283,7 +74287,7 @@ paths: commit_oid: 1927de39fefa25a9d0e64e3f540ff824a72f538c '302': &487 description: Found - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -74316,7 +74320,7 @@ paths: responses: '204': description: Response - '403': *443 + '403': *444 '404': *6 '503': *115 x-github: @@ -74354,7 +74358,7 @@ paths: type: object additionalProperties: false properties: - language: &454 + language: &455 type: string description: The language targeted by the CodeQL query enum: @@ -74434,7 +74438,7 @@ paths: description: Variant analysis submitted for processing content: application/json: - schema: &458 + schema: &459 title: Variant Analysis description: A run of a CodeQL query against one or more repositories. type: object @@ -74444,7 +74448,7 @@ paths: description: The ID of the variant analysis. controller_repo: *66 actor: *4 - query_language: *454 + query_language: *455 query_pack_url: type: string description: The download url for the query pack. @@ -74492,7 +74496,7 @@ paths: items: type: object properties: - repository: &455 + repository: &456 title: Repository Identifier description: Repository Identifier type: object @@ -74534,7 +74538,7 @@ paths: - private - stargazers_count - updated_at - analysis_status: &459 + analysis_status: &460 type: string description: The new status of the CodeQL variant analysis repository task. @@ -74566,7 +74570,7 @@ paths: from processing. This information is only available to the user that initiated the variant analysis. properties: - access_mismatch_repos: &456 + access_mismatch_repos: &457 type: object properties: repository_count: @@ -74581,7 +74585,7 @@ paths: This list may not include all repositories that were skipped. This is only available when the repository was found and the user has access to it. - items: *455 + items: *456 required: - repository_count - repositories @@ -74604,8 +74608,8 @@ paths: required: - repository_count - repository_full_names - no_codeql_db_repos: *456 - over_limit_repos: *456 + no_codeql_db_repos: *457 + over_limit_repos: *457 required: - access_mismatch_repos - not_found_repos @@ -74621,7 +74625,7 @@ paths: examples: repositories_parameter: summary: Response for a successful variant analysis submission - value: &457 + value: &458 summary: Default response value: id: 1 @@ -74767,10 +74771,10 @@ paths: private: false repository_owners: summary: Response for a successful variant analysis submission - value: *457 + value: *458 repository_lists: summary: Response for a successful variant analysis submission - value: *457 + value: *458 '404': *6 '422': description: Unable to process variant analysis submission @@ -74811,9 +74815,9 @@ paths: description: Response content: application/json: - schema: *458 + schema: *459 examples: - default: *457 + default: *458 '404': *6 '503': *115 x-github: @@ -74871,7 +74875,7 @@ paths: type: object properties: repository: *66 - analysis_status: *459 + analysis_status: *460 artifact_size_in_bytes: type: integer description: The size of the artifact. This is only available @@ -75088,7 +75092,7 @@ paths: threat_model: remote updated_at: '2023-01-19T11:21:34Z' schedule: weekly - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -75204,7 +75208,7 @@ paths: value: run_id: 42 run_url: https://api.github.com/repos/octoorg/octocat/actions/runs/42 - '403': *443 + '403': *444 '404': *6 '409': description: Response if there is already a validation run in progress with @@ -75284,7 +75288,7 @@ paths: schema: type: object properties: - commit_sha: *460 + commit_sha: *461 ref: type: string description: |- @@ -75344,7 +75348,7 @@ paths: schema: type: object properties: - id: *451 + id: *452 url: type: string description: The REST API URL for checking the status of the upload. @@ -75358,7 +75362,7 @@ paths: url: https://api.github.com/repos/octocat/hello-world/code-scanning/sarifs/47177e22-5596-11eb-80a1-c1e54ef945c6 '400': description: Bad Request if the sarif field is invalid - '403': *443 + '403': *444 '404': *6 '413': description: Payload Too Large if the sarif field is too large @@ -75430,7 +75434,7 @@ paths: value: processing_status: complete analyses_url: https://api.github.com/repos/octocat/hello-world/code-scanning/analyses?sarif_id=47177e22-5596-11eb-80a1-c1e54ef945c6 - '403': *437 + '403': *438 '404': description: Not Found if the sarif id does not match any upload '503': *115 @@ -76048,7 +76052,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '202': description: Response when the codespace creation partially failed but is being retried in the background @@ -76056,7 +76060,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '400': *14 '401': *23 '403': *27 @@ -76188,9 +76192,9 @@ paths: type: integer machines: type: array - items: *462 + items: *463 examples: - default: &713 + default: &714 value: total_count: 2 machines: @@ -76407,7 +76411,7 @@ paths: type: integer secrets: type: array - items: &466 + items: &467 title: Codespaces Secret description: Set repository secrets for GitHub Codespaces. type: object @@ -76428,7 +76432,7 @@ paths: - created_at - updated_at examples: - default: *463 + default: *464 headers: Link: *67 x-github: @@ -76458,9 +76462,9 @@ paths: description: Response content: application/json: - schema: *464 + schema: *465 examples: - default: *465 + default: *466 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -76488,9 +76492,9 @@ paths: description: Response content: application/json: - schema: *466 + schema: *467 examples: - default: *467 + default: *468 x-github: githubCloudOnly: false enabledForGitHubApps: true @@ -76633,7 +76637,7 @@ paths: application/json: schema: type: array - items: &468 + items: &469 title: Collaborator description: Collaborator type: object @@ -77185,7 +77189,7 @@ paths: user: anyOf: - type: 'null' - - *468 + - *469 required: - permission - role_name @@ -77250,7 +77254,7 @@ paths: application/json: schema: type: array - items: &469 + items: &470 title: Commit Comment description: Commit Comment type: object @@ -77308,7 +77312,7 @@ paths: - created_at - updated_at examples: - default: &474 + default: &475 value: - html_url: https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e#commitcomment-1 url: https://api.github.com/repos/octocat/Hello-World/comments/1 @@ -77375,9 +77379,9 @@ paths: description: Response content: application/json: - schema: *469 + schema: *470 examples: - default: &475 + default: &476 value: html_url: https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e#commitcomment-1 url: https://api.github.com/repos/octocat/Hello-World/comments/1 @@ -77458,7 +77462,7 @@ paths: description: Response content: application/json: - schema: *469 + schema: *470 examples: default: value: @@ -77560,7 +77564,7 @@ paths: application/json: schema: type: array - items: &470 + items: &471 title: Reaction description: Reactions to conversations provide a way to help people express their feelings more simply and effectively. @@ -77683,9 +77687,9 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: &471 + default: &472 value: id: 1 node_id: MDg6UmVhY3Rpb24x @@ -77714,9 +77718,9 @@ paths: description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -77853,7 +77857,7 @@ paths: application/json: schema: type: array - items: *472 + items: *473 examples: default: &606 value: @@ -77951,7 +77955,7 @@ paths: parameters: - *340 - *341 - - &473 + - &474 name: commit_sha description: The SHA of the commit. in: path @@ -78025,7 +78029,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 - *17 - *19 responses: @@ -78035,9 +78039,9 @@ paths: application/json: schema: type: array - items: *469 + items: *470 examples: - default: *474 + default: *475 headers: Link: *67 x-github: @@ -78067,7 +78071,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 requestBody: required: true content: @@ -78102,9 +78106,9 @@ paths: description: Response content: application/json: - schema: *469 + schema: *470 examples: - default: *475 + default: *476 headers: Location: example: https://api.github.com/repos/octocat/Hello-World/comments/1 @@ -78134,7 +78138,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 - *17 - *19 responses: @@ -78144,7 +78148,7 @@ paths: application/json: schema: type: array - items: *476 + items: *437 examples: default: &597 value: @@ -78702,7 +78706,7 @@ paths: description: Response content: application/json: - schema: *472 + schema: *473 examples: default: &585 value: @@ -79367,7 +79371,7 @@ paths: application/json: schema: type: array - items: &692 + items: &693 title: Status description: The status of a commit. type: object @@ -79724,8 +79728,8 @@ paths: format: uri examples: - https://github.com/octocat/Hello-World/compare/master...topic.patch - base_commit: *472 - merge_base_commit: *472 + base_commit: *473 + merge_base_commit: *473 status: type: string enum: @@ -79749,7 +79753,7 @@ paths: - 6 commits: type: array - items: *472 + items: *473 files: type: array items: *483 @@ -86232,7 +86236,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 responses: '200': description: Response @@ -87217,7 +87221,7 @@ paths: format: uri examples: - https://api.github.com/repos/octocat/Hello-World/hooks/1/deliveries - last_response: &802 + last_response: &803 title: Hook Response type: object properties: @@ -88286,7 +88290,7 @@ paths: parameters: - *340 - *341 - - &736 + - &737 name: since description: A user ID. Only return users with an ID greater than this ID. in: query @@ -89005,7 +89009,7 @@ paths: type: array items: *537 examples: - default: &728 + default: &729 value: - id: 1 repository: @@ -90264,7 +90268,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -90321,16 +90325,16 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -94236,7 +94240,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -94294,16 +94298,16 @@ paths: description: Response content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Response content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -95490,7 +95494,7 @@ paths: type: string comments: type: array - items: *469 + items: *470 - title: Timeline Assigned Issue Event description: Timeline Assigned Issue Event type: object @@ -96281,7 +96285,7 @@ paths: parameters: - *340 - *341 - - *444 + - *445 responses: '200': description: Response @@ -96529,7 +96533,7 @@ paths: description: Successful Response (The resulting merge commit) content: application/json: - schema: *472 + schema: *473 examples: default: *585 '204': @@ -98387,7 +98391,7 @@ paths: application/json: schema: type: array - items: *476 + items: *437 examples: default: *597 headers: @@ -99608,7 +99612,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -99665,16 +99669,16 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -99927,7 +99931,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '202': description: Response when the codespace creation partially failed but is being retried in the background @@ -99935,7 +99939,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '401': *23 '403': *27 '404': *6 @@ -100342,7 +100346,7 @@ paths: application/json: schema: type: array - items: *472 + items: *473 examples: default: *606 headers: @@ -100679,7 +100683,7 @@ paths: description: Response content: application/json: - schema: *476 + schema: *437 examples: default: value: @@ -101251,7 +101255,7 @@ paths: description: Response content: application/json: - schema: *476 + schema: *437 examples: default: value: @@ -103795,7 +103799,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -103850,16 +103854,16 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -104877,7 +104881,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 - *650 responses: '200': @@ -105029,7 +105033,7 @@ paths: anyOf: - type: 'null' - *4 - metadata: &821 + metadata: &822 type: array description: A list of metadata key/value pairs associated with the secret scanning alert. @@ -105104,7 +105108,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 requestBody: required: true content: @@ -105265,7 +105269,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 - *19 - *17 responses: @@ -105276,7 +105280,7 @@ paths: schema: type: array description: List of locations where the secret was detected - items: &823 + items: &824 type: object properties: type: @@ -106861,6 +106865,1036 @@ paths: enabledForGitHubApps: true category: security-advisories subcategory: repository-advisories + "/repos/{owner}/{repo}/stacks": + get: + summary: List pull request stacks + description: Lists pull request stacks in a repository. + tags: + - pulls + operationId: pull-request-stacks/list + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks + parameters: + - *340 + - *341 + - name: pull_request + description: Filter to the stack containing this repository pull request number. + in: query + required: false + schema: + type: integer + - *17 + - *19 + responses: + '200': + description: Response + content: + application/json: + schema: + type: array + items: + title: Pull Request Stack Minimal + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + type: object + required: + - number + - state + - draft + - merged_at + - head + properties: + number: + type: integer + state: + type: string + enum: + - open + - closed + draft: + type: boolean + merged_at: + type: + - string + - 'null' + format: date-time + head: + type: object + required: + - ref + - sha + properties: + ref: + type: string + sha: + type: string + examples: + default: + value: + - id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + pull_requests: + - number: 101 + state: open + draft: false + merged_at: + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + - number: 102 + state: open + draft: false + merged_at: + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + open: true + created_at: '2026-04-15T10:00:00Z' + '404': *6 + '422': *15 + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + post: + summary: Create a pull request stack + description: |- + Creates a stack from an ordered list of pull request numbers. Provide the pull + request numbers from the bottom of the stack to the top. Each pull request's + base ref must match the previous pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/create + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + parameters: + - *340 + - *341 + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers forming the + stack from bottom to top. + items: + type: integer + minItems: 2 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 101 + - 102 + - 103 + responses: + '201': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: &691 + title: Pull Request Stack Pull Request + type: object + allOf: + - *86 + - type: object + required: + - node_id + - title + - state + - merged_at + - draft + - html_url + - user + properties: + node_id: + type: string + title: + type: string + state: + type: string + enum: + - open + - closed + merged_at: + type: + - string + - 'null' + format: date-time + draft: + type: boolean + html_url: + type: string + format: uri + user: + anyOf: + - type: 'null' + - *4 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't form a + valid stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't form a linear stack + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}": + get: + summary: Get a pull request stack + description: Gets a pull request stack by providing its stack number. + tags: + - pulls + operationId: pull-request-stacks/get + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack + parameters: + - *340 + - *341 + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: *691 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/add": + post: + summary: Add pull requests to a pull request stack + description: |- + Appends an ordered list of pull request numbers onto the top of an existing + stack. Provide only the pull requests you want to add, from the current top of + the stack upward. The first new pull request's base ref must match the current + top pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/add + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + parameters: + - *340 + - *341 + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers to append to + the stack, from the current top upward. + items: + type: integer + minItems: 1 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 104 + - 102 + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: *691 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: *3 + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't be appended + to the stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't continue the stack linearly + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": + post: + summary: Remove pull requests from a pull request stack + description: |- + Removes the unmerged pull requests from a stack. Pull requests that cannot be + unstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated + stack is returned with a `200`. When no pull requests remain, the stack is + dissolved and a `204` is returned. + tags: + - pulls + operationId: pull-request-stacks/unstack + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + parameters: + - *340 + - *341 + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: *691 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: *3 + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the stack can't be unstacked because every + pull request in it is locked and cannot be removed. + content: + application/json: + schema: *125 + examples: + cannot_be_removed: + summary: Every pull request in the stack is locked and can't be + removed + value: + message: Pull requests in this stack cannot be removed + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + '204': *58 + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks "/repos/{owner}/{repo}/stargazers": get: summary: List stargazers @@ -106984,7 +108018,7 @@ paths: application/json: schema: type: array - items: &691 + items: &692 title: Code Frequency Stat description: Code Frequency Stat type: array @@ -107357,7 +108391,7 @@ paths: application/json: schema: type: array - items: *691 + items: *692 examples: default: value: @@ -107447,7 +108481,7 @@ paths: description: Response content: application/json: - schema: *692 + schema: *693 examples: default: value: @@ -107541,7 +108575,7 @@ paths: description: if you subscribe to the repository content: application/json: - schema: &693 + schema: &694 title: Repository Invitation description: Repository invitations let you manage who you collaborate with. @@ -107641,7 +108675,7 @@ paths: description: Response content: application/json: - schema: *693 + schema: *694 examples: default: value: @@ -107851,7 +108885,7 @@ paths: description: Response content: application/json: - schema: &694 + schema: &695 title: Topic description: A topic aggregates entities that are related to a subject. type: object @@ -107863,7 +108897,7 @@ paths: required: - names examples: - default: &695 + default: &696 value: names: - octocat @@ -107918,9 +108952,9 @@ paths: description: Response content: application/json: - schema: *694 + schema: *695 examples: - default: *695 + default: *696 '404': *6 '422': *7 x-github: @@ -107943,7 +108977,7 @@ paths: parameters: - *340 - *341 - - &696 + - &697 name: per description: The time frame to display results for. in: query @@ -107974,7 +109008,7 @@ paths: - 128 clones: type: array - items: &697 + items: &698 title: Traffic type: object properties: @@ -108222,7 +109256,7 @@ paths: parameters: - *340 - *341 - - *696 + - *697 responses: '200': description: Response @@ -108243,7 +109277,7 @@ paths: - 3782 views: type: array - items: *697 + items: *698 required: - uniques - count @@ -109015,7 +110049,7 @@ paths: examples: - 73..77 - 77..78 - text_matches: &698 + text_matches: &699 title: Search Result Text Matches type: array items: @@ -109178,7 +110212,7 @@ paths: enum: - author-date - committer-date - - &699 + - &700 name: order description: Determines whether the first search result returned is the highest number of matches (`desc`) or lowest number of matches (`asc`). This parameter @@ -109298,7 +110332,7 @@ paths: type: number node_id: type: string - text_matches: *698 + text_matches: *699 required: - sha - node_id @@ -109490,7 +110524,7 @@ paths: - interactions - created - updated - - *699 + - *700 - *17 - *19 - name: advanced_search @@ -109604,8 +110638,8 @@ paths: type: - string - 'null' - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -109632,7 +110666,7 @@ paths: - string - 'null' format: date-time - text_matches: *698 + text_matches: *699 pull_request: type: object properties: @@ -109906,7 +110940,7 @@ paths: enum: - created - updated - - *699 + - *700 - *17 - *19 responses: @@ -109951,7 +110985,7 @@ paths: - 'null' score: type: number - text_matches: *698 + text_matches: *699 required: - id - node_id @@ -110036,7 +111070,7 @@ paths: - forks - help-wanted-issues - updated - - *699 + - *700 - *17 - *19 responses: @@ -110282,7 +111316,7 @@ paths: - admin - pull - push - text_matches: *698 + text_matches: *699 temp_clone_token: type: string allow_merge_commit: @@ -110590,7 +111624,7 @@ paths: - string - 'null' format: uri - text_matches: *698 + text_matches: *699 related: type: - array @@ -110783,7 +111817,7 @@ paths: - followers - repositories - joined - - *699 + - *700 - *17 - *19 responses: @@ -110893,7 +111927,7 @@ paths: type: - boolean - 'null' - text_matches: *698 + text_matches: *699 blog: type: - string @@ -110975,7 +112009,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#get-a-team-legacy parameters: - - &702 + - &703 name: team_id description: The unique identifier of the team. in: path @@ -111016,7 +112050,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#update-a-team-legacy parameters: - - *702 + - *703 requestBody: required: true content: @@ -111117,7 +112151,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#delete-a-team-legacy parameters: - - *702 + - *703 responses: '204': description: Response @@ -111146,7 +112180,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#list-pending-team-invitations-legacy parameters: - - *702 + - *703 - *17 - *19 responses: @@ -111186,7 +112220,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#list-team-members-legacy parameters: - - *702 + - *703 - name: role description: Filters members returned by their role in the team. in: query @@ -111207,9 +112241,9 @@ paths: application/json: schema: type: array - items: *703 + items: *704 examples: - default: *704 + default: *705 headers: Link: *67 '404': *6 @@ -111237,7 +112271,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#get-team-member-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -111274,7 +112308,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#add-team-member-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -111314,7 +112348,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#remove-team-member-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -111351,7 +112385,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#get-team-membership-for-a-user-legacy parameters: - - *702 + - *703 - *71 responses: '200': @@ -111360,7 +112394,7 @@ paths: application/json: schema: *339 examples: - response-if-user-is-a-team-maintainer: *705 + response-if-user-is-a-team-maintainer: *706 '404': *6 x-github: githubCloudOnly: false @@ -111393,7 +112427,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#add-or-update-team-membership-for-a-user-legacy parameters: - - *702 + - *703 - *71 requestBody: required: false @@ -111421,7 +112455,7 @@ paths: application/json: schema: *339 examples: - response-if-users-membership-with-team-is-now-pending: *706 + response-if-users-membership-with-team-is-now-pending: *707 '403': description: Forbidden if team synchronization is set up '422': @@ -111455,7 +112489,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#remove-team-membership-for-a-user-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -111483,7 +112517,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#list-team-repositories-legacy parameters: - - *702 + - *703 - *17 - *19 responses: @@ -111525,7 +112559,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository-legacy parameters: - - *702 + - *703 - *340 - *341 responses: @@ -111533,7 +112567,7 @@ paths: description: Alternative response with extra repository information content: application/json: - schema: *707 + schema: *708 examples: alternative-response-with-extra-repository-information: value: @@ -111683,7 +112717,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#add-or-update-team-repository-permissions-legacy parameters: - - *702 + - *703 - *340 - *341 requestBody: @@ -111735,7 +112769,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#remove-a-repository-from-a-team-legacy parameters: - - *702 + - *703 - *340 - *341 responses: @@ -111762,7 +112796,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#list-child-teams-legacy parameters: - - *702 + - *703 - *17 - *19 responses: @@ -111774,7 +112808,7 @@ paths: type: array items: *201 examples: - response-if-child-teams-exist: *708 + response-if-child-teams-exist: *709 headers: Link: *67 '404': *6 @@ -111807,7 +112841,7 @@ paths: application/json: schema: oneOf: - - &709 + - &710 title: Private User description: Private User type: object @@ -112057,7 +113091,7 @@ paths: - private_gists - total_private_repos - two_factor_authentication - - &735 + - &736 title: Public User description: Public User type: object @@ -112391,7 +113425,7 @@ paths: description: Response content: application/json: - schema: *709 + schema: *710 examples: default: value: @@ -112737,7 +113771,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '202': description: Response when the codespace creation partially failed but is being retried in the background @@ -112745,7 +113779,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '401': *23 '403': *27 '404': *6 @@ -112789,7 +113823,7 @@ paths: type: integer secrets: type: array - items: &710 + items: &711 title: Codespaces Secret description: Secrets for a GitHub Codespace. type: object @@ -112831,7 +113865,7 @@ paths: - visibility - selected_repositories_url examples: - default: *463 + default: *464 headers: Link: *67 x-github: @@ -112909,7 +113943,7 @@ paths: description: Response content: application/json: - schema: *710 + schema: *711 examples: default: value: @@ -113207,7 +114241,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '304': *36 '500': *54 '401': *23 @@ -113265,7 +114299,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '401': *23 '403': *27 '404': *6 @@ -113322,7 +114356,7 @@ paths: description: Response content: application/json: - schema: &711 + schema: &712 type: object title: Fetches information about an export of a codespace. description: An export of a codespace. Also, latest export details @@ -113375,7 +114409,7 @@ paths: examples: - https://github.com/octocat/hello-world/tree/:branch examples: - default: &712 + default: &713 value: state: succeeded completed_at: '2022-01-01T14:59:22Z' @@ -113420,9 +114454,9 @@ paths: description: Response content: application/json: - schema: *711 + schema: *712 examples: - default: *712 + default: *713 '404': *6 x-github: githubCloudOnly: false @@ -113459,9 +114493,9 @@ paths: type: integer machines: type: array - items: *462 + items: *463 examples: - default: *713 + default: *714 '304': *36 '500': *54 '401': *23 @@ -113550,7 +114584,7 @@ paths: machine: anyOf: - type: 'null' - - *462 + - *463 devcontainer_path: description: Path to devcontainer.json from repo root used to create Codespace. @@ -114355,7 +115389,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '304': *36 '500': *54 '400': *14 @@ -114395,7 +115429,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '500': *54 '401': *23 '403': *27 @@ -114427,7 +115461,7 @@ paths: type: array items: *263 examples: - default: &725 + default: &726 value: - id: 197 name: hello_docker @@ -114528,7 +115562,7 @@ paths: application/json: schema: type: array - items: &714 + items: &715 title: Email description: Email type: object @@ -114598,9 +115632,9 @@ paths: application/json: schema: type: array - items: *714 + items: *715 examples: - default: &727 + default: &728 value: - email: octocat@github.com verified: true @@ -114677,7 +115711,7 @@ paths: application/json: schema: type: array - items: *714 + items: *715 examples: default: value: @@ -114935,7 +115969,7 @@ paths: application/json: schema: type: array - items: &715 + items: &716 title: GPG Key description: A unique encryption key type: object @@ -115080,7 +116114,7 @@ paths: - subkeys - revoked examples: - default: &745 + default: &746 value: - id: 3 name: Octocat's GPG Key @@ -115165,9 +116199,9 @@ paths: description: Response content: application/json: - schema: *715 + schema: *716 examples: - default: &716 + default: &717 value: id: 3 name: Octocat's GPG Key @@ -115224,7 +116258,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/gpg-keys#get-a-gpg-key-for-the-authenticated-user parameters: - - &717 + - &718 name: gpg_key_id description: The unique identifier of the GPG key. in: path @@ -115236,9 +116270,9 @@ paths: description: Response content: application/json: - schema: *715 + schema: *716 examples: - default: *716 + default: *717 '404': *6 '304': *36 '403': *27 @@ -115261,7 +116295,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/gpg-keys#delete-a-gpg-key-for-the-authenticated-user parameters: - - *717 + - *718 responses: '204': description: Response @@ -115728,7 +116762,7 @@ paths: application/json: schema: type: array - items: &718 + items: &719 title: Key description: Key type: object @@ -115831,9 +116865,9 @@ paths: description: Response content: application/json: - schema: *718 + schema: *719 examples: - default: &719 + default: &720 value: key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 id: 2 @@ -115872,9 +116906,9 @@ paths: description: Response content: application/json: - schema: *718 + schema: *719 examples: - default: *719 + default: *720 '404': *6 '304': *36 '403': *27 @@ -115930,7 +116964,7 @@ paths: application/json: schema: type: array - items: &720 + items: &721 title: User Marketplace Purchase description: User Marketplace Purchase type: object @@ -116009,7 +117043,7 @@ paths: - account - plan examples: - default: &721 + default: &722 value: - billing_cycle: monthly next_billing_date: '2017-11-11T00:00:00Z' @@ -116071,9 +117105,9 @@ paths: application/json: schema: type: array - items: *720 + items: *721 examples: - default: *721 + default: *722 headers: Link: *67 '304': *36 @@ -116316,7 +117350,7 @@ paths: application/json: schema: *255 examples: - default: &722 + default: &723 value: url: https://api.github.com/orgs/octocat/memberships/defunkt state: active @@ -116365,7 +117399,7 @@ paths: application/json: schema: *255 examples: - default: *722 + default: *723 '403': *27 '404': *6 '422': *15 @@ -117099,7 +118133,7 @@ paths: url: https://docs.github.com/rest/migrations/users#unlock-a-user-repository parameters: - *258 - - *723 + - *724 responses: '204': description: Response @@ -117212,7 +118246,7 @@ paths: - docker - nuget - container - - *724 + - *725 - *19 - *17 responses: @@ -117224,8 +118258,8 @@ paths: type: array items: *263 examples: - default: *725 - '400': *726 + default: *726 + '400': *727 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -117254,7 +118288,7 @@ paths: application/json: schema: *263 examples: - default: &746 + default: &747 value: id: 40201 name: octo-name @@ -117616,9 +118650,9 @@ paths: application/json: schema: type: array - items: *714 + items: *715 examples: - default: *727 + default: *728 headers: Link: *67 '304': *36 @@ -117731,7 +118765,7 @@ paths: type: array items: *79 examples: - default: &734 + default: &735 summary: Default response value: - id: 1296269 @@ -118092,7 +119126,7 @@ paths: type: array items: *537 examples: - default: *728 + default: *729 headers: Link: *67 '304': *36 @@ -118172,7 +119206,7 @@ paths: application/json: schema: type: array - items: &729 + items: &730 title: Social account description: Social media account type: object @@ -118189,7 +119223,7 @@ paths: - provider - url examples: - default: &730 + default: &731 value: - provider: twitter url: https://twitter.com/github @@ -118252,9 +119286,9 @@ paths: application/json: schema: type: array - items: *729 + items: *730 examples: - default: *730 + default: *731 '422': *15 '304': *36 '404': *6 @@ -118342,7 +119376,7 @@ paths: application/json: schema: type: array - items: &731 + items: &732 title: SSH Signing Key description: A public SSH key used to sign Git commits type: object @@ -118362,7 +119396,7 @@ paths: - title - created_at examples: - default: &763 + default: &764 value: - id: 2 key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 @@ -118427,9 +119461,9 @@ paths: description: Response content: application/json: - schema: *731 + schema: *732 examples: - default: &732 + default: &733 value: id: 2 key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 @@ -118459,7 +119493,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/ssh-signing-keys#get-an-ssh-signing-key-for-the-authenticated-user parameters: - - &733 + - &734 name: ssh_signing_key_id description: The unique identifier of the SSH signing key. in: path @@ -118471,9 +119505,9 @@ paths: description: Response content: application/json: - schema: *731 + schema: *732 examples: - default: *732 + default: *733 '404': *6 '304': *36 '403': *27 @@ -118496,7 +119530,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/ssh-signing-keys#delete-an-ssh-signing-key-for-the-authenticated-user parameters: - - *733 + - *734 responses: '204': description: Response @@ -118525,7 +119559,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/activity/starring#list-repositories-starred-by-the-authenticated-user parameters: - - &764 + - &765 name: sort description: The property to sort the results by. `created` means when the repository was starred. `updated` means when the repository was last pushed @@ -118550,11 +119584,11 @@ paths: type: array items: *79 examples: - default-response: *734 + default-response: *735 application/vnd.github.v3.star+json: schema: type: array - items: &765 + items: &766 title: Starred Repository description: Starred Repository type: object @@ -118923,10 +119957,10 @@ paths: application/json: schema: oneOf: - - *709 - - *735 + - *710 + - *736 examples: - default-response: &739 + default-response: &740 summary: Default response value: login: octocat @@ -118961,7 +119995,7 @@ paths: following: 0 created_at: '2008-01-14T04:33:35Z' updated_at: '2008-01-14T04:33:35Z' - response-with-git-hub-plan-information: &740 + response-with-git-hub-plan-information: &741 summary: Response with GitHub plan information value: login: octocat @@ -119018,7 +120052,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/projects/drafts#create-draft-item-for-user-owned-project parameters: - - &737 + - &738 name: user_id description: The unique identifier of the user. in: path @@ -119084,7 +120118,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/users#list-users parameters: - - *736 + - *737 - *17 responses: '200': @@ -119119,7 +120153,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/projects/views#create-a-view-for-a-user-owned-project parameters: - - *737 + - *738 - *281 requestBody: required: true @@ -119194,7 +120228,7 @@ paths: description: Response for creating a view in a user-owned project. content: application/json: - schema: *738 + schema: *739 examples: table_view: summary: Response for creating a table view @@ -119246,11 +120280,11 @@ paths: application/json: schema: oneOf: - - *709 - - *735 + - *710 + - *736 examples: - default-response: *739 - response-with-git-hub-plan-information: *740 + default-response: *740 + response-with-git-hub-plan-information: *741 '404': *6 x-github: githubCloudOnly: false @@ -119300,8 +120334,8 @@ paths: required: - subject_digests examples: - default: *741 - withPredicateType: *742 + default: *742 + withPredicateType: *743 responses: '200': description: Response @@ -119341,7 +120375,7 @@ paths: description: The cursor to the previous page. description: Information about the current page. examples: - default: *743 + default: *744 x-github: githubCloudOnly: false enabledForGitHubApps: true @@ -119814,7 +120848,7 @@ paths: application/json: schema: *197 examples: - default: &744 + default: &745 summary: Example response for a user copilot space value: id: 42 @@ -119915,7 +120949,7 @@ paths: application/json: schema: *197 examples: - default: *744 + default: *745 '403': *27 '404': *6 x-github: @@ -120041,7 +121075,7 @@ paths: application/json: schema: *197 examples: - default: *744 + default: *745 '403': *27 '404': *6 '422': *15 @@ -120809,7 +121843,7 @@ paths: type: array items: *263 examples: - default: *725 + default: *726 '403': *27 '401': *23 x-github: @@ -121193,9 +122227,9 @@ paths: application/json: schema: type: array - items: *715 + items: *716 examples: - default: *745 + default: *746 headers: Link: *67 x-github: @@ -121424,7 +122458,7 @@ paths: - docker - nuget - container - - *724 + - *725 - *71 - *19 - *17 @@ -121437,10 +122471,10 @@ paths: type: array items: *263 examples: - default: *725 + default: *726 '403': *27 '401': *23 - '400': *726 + '400': *727 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -121470,7 +122504,7 @@ paths: application/json: schema: *263 examples: - default: *746 + default: *747 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -121819,7 +122853,7 @@ paths: type: array items: *284 examples: - default: *747 + default: *748 headers: Link: *67 '304': *36 @@ -121879,7 +122913,7 @@ paths: description: The options available for single select fields. At least one option must be provided when creating a single select field. - items: *748 + items: *749 required: - name - data_type @@ -121895,7 +122929,7 @@ paths: description: The field's data type. enum: - iteration - iteration_configuration: *749 + iteration_configuration: *750 required: - name - data_type @@ -121917,8 +122951,8 @@ paths: value: name: Due date data_type: date - single_select_field: *750 - iteration_field: *751 + single_select_field: *751 + iteration_field: *752 responses: '201': description: Response @@ -121926,11 +122960,11 @@ paths: application/json: schema: *284 examples: - text_field: *752 - number_field: *753 - date_field: *754 - single_select_field: *755 - iteration_field: *756 + text_field: *753 + number_field: *754 + date_field: *755 + single_select_field: *756 + iteration_field: *757 '304': *36 '403': *27 '401': *23 @@ -121952,7 +122986,7 @@ paths: url: https://docs.github.com/rest/projects/fields#get-project-field-for-user parameters: - *281 - - *757 + - *758 - *71 responses: '200': @@ -121961,7 +122995,7 @@ paths: application/json: schema: *284 examples: - default: *758 + default: *759 headers: Link: *67 '304': *36 @@ -122318,7 +123352,7 @@ paths: parameters: - *281 - *71 - - *759 + - *760 - name: fields description: |- Limit results to specific fields, by their IDs. If not specified, the @@ -122857,7 +123891,7 @@ paths: parameters: - *71 - *117 - - *760 + - *761 - *119 responses: '200': @@ -122956,9 +123990,9 @@ paths: - *117 - *118 - *119 - - *761 - - *122 - *762 + - *122 + - *763 responses: '200': description: Response when getting a billing usage summary @@ -123092,9 +124126,9 @@ paths: application/json: schema: type: array - items: *729 + items: *730 examples: - default: *730 + default: *731 headers: Link: *67 x-github: @@ -123124,9 +124158,9 @@ paths: application/json: schema: type: array - items: *731 + items: *732 examples: - default: *763 + default: *764 headers: Link: *67 x-github: @@ -123151,7 +124185,7 @@ paths: url: https://docs.github.com/rest/activity/starring#list-repositories-starred-by-a-user parameters: - *71 - - *764 + - *765 - *61 - *17 - *19 @@ -123163,11 +124197,11 @@ paths: schema: anyOf: - type: array - items: *765 + items: *766 - type: array items: *79 examples: - default-response: *734 + default-response: *735 headers: Link: *67 x-github: @@ -123327,7 +124361,7 @@ webhooks: type: string enum: - disabled - enterprise: &766 + enterprise: &767 title: Enterprise description: |- An enterprise on GitHub. Webhook payloads contain the `enterprise` property when the webhook is configured @@ -123396,7 +124430,7 @@ webhooks: - created_at - updated_at - avatar_url - installation: &767 + installation: &768 title: Simple Installation description: |- The GitHub App installation. Webhook payloads contain the `installation` property when the event is configured @@ -123417,7 +124451,7 @@ webhooks: required: - id - node_id - organization: &768 + organization: &769 title: Organization Simple description: |- A GitHub organization. Webhook payloads contain the `organization` property when the webhook is configured for an @@ -123490,7 +124524,7 @@ webhooks: - public_members_url - avatar_url - description - repository: &769 + repository: &770 title: Repository description: |- The repository on GitHub where the event occurred. Webhook payloads contain the `repository` property @@ -124405,10 +125439,10 @@ webhooks: type: string enum: - enabled - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -124484,11 +125518,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - rule: &770 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + rule: &771 title: branch protection rule description: The branch protection rule. Includes a `name` and all the [branch protection settings](https://docs.github.com/github/administering-a-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#about-branch-protection-settings) @@ -124711,11 +125745,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - rule: *770 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + rule: *771 sender: *4 required: - action @@ -124903,11 +125937,11 @@ webhooks: - everyone required: - from - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - rule: *770 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + rule: *771 sender: *4 required: - action @@ -124991,7 +126025,7 @@ webhooks: type: string enum: - completed - check_run: &772 + check_run: &773 title: CheckRun description: A check performed on the code of a given code change type: object @@ -125101,7 +126135,7 @@ webhooks: - examples: - neutral - deployment: *771 + deployment: *772 details_url: type: string examples: @@ -125199,10 +126233,10 @@ webhooks: - output - app - pull_requests - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 sender: *4 required: - check_run @@ -125593,11 +126627,11 @@ webhooks: type: string enum: - created - check_run: *772 - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + check_run: *773 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 sender: *4 required: - check_run @@ -125991,11 +127025,11 @@ webhooks: type: string enum: - requested_action - check_run: *772 - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + check_run: *773 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 requested_action: description: The action requested by the user. type: object @@ -126398,11 +127432,11 @@ webhooks: type: string enum: - rerequested - check_run: *772 - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + check_run: *773 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 sender: *4 required: - check_run @@ -127387,10 +128421,10 @@ webhooks: - latest_check_runs_count - check_runs_url - head_commit - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -128104,10 +129138,10 @@ webhooks: - latest_check_runs_count - check_runs_url - head_commit - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -128815,10 +129849,10 @@ webhooks: - latest_check_runs_count - check_runs_url - head_commit - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -129139,20 +130173,20 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: &773 + commit_oid: &774 description: The commit SHA of the code scanning alert. When the action is `reopened_by_user` or `closed_by_user`, the event was triggered by the `sender` and this value will be empty. type: string - enterprise: *766 - installation: *767 - organization: *768 - ref: &774 + enterprise: *767 + installation: *768 + organization: *769 + ref: &775 description: The Git reference of the code scanning alert. When the action is `reopened_by_user` or `closed_by_user`, the event was triggered by the `sender` and this value will be empty. type: string - repository: *769 + repository: *770 sender: *4 required: - action @@ -129560,12 +130594,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -129848,12 +130882,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -130199,12 +131233,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -130494,9 +131528,9 @@ webhooks: type: - string - 'null' - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 ref: description: The Git reference of the code scanning alert. When the action is `reopened_by_user` or `closed_by_user`, the event @@ -130504,7 +131538,7 @@ webhooks: type: - string - 'null' - repository: *769 + repository: *770 sender: *4 required: - action @@ -130750,12 +131784,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -131076,10 +132110,10 @@ webhooks: - dismissed_reason - rule - tool - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -131339,10 +132373,10 @@ webhooks: - updated_at - author_association - body - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -131423,18 +132457,18 @@ webhooks: type: - string - 'null' - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 master_branch: description: The name of the repository's default branch (usually `main`). type: string - organization: *768 - pusher_type: &775 + organization: *769 + pusher_type: &776 description: The pusher type for the event. Can be either `user` or a deploy key. type: string - ref: &776 + ref: &777 description: The [`git ref`](https://docs.github.com/rest/git/refs#get-a-reference) resource. type: string @@ -131444,7 +132478,7 @@ webhooks: enum: - tag - branch - repository: *769 + repository: *770 sender: *4 required: - ref @@ -131527,9 +132561,9 @@ webhooks: enum: - created definition: *292 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -131614,9 +132648,9 @@ webhooks: description: The name of the property that was deleted. required: - property_name - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -131694,9 +132728,9 @@ webhooks: enum: - promote_to_enterprise definition: *292 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -131774,9 +132808,9 @@ webhooks: enum: - updated definition: *292 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -131853,10 +132887,10 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - repository: *769 - organization: *768 + enterprise: *767 + installation: *768 + repository: *770 + organization: *769 sender: *4 new_property_values: type: array @@ -131941,18 +132975,18 @@ webhooks: title: delete event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - pusher_type: *775 - ref: *776 + enterprise: *767 + installation: *768 + organization: *769 + pusher_type: *776 + ref: *777 ref_type: description: The type of Git ref object deleted in the repository. type: string enum: - tag - branch - repository: *769 + repository: *770 sender: *4 required: - ref @@ -132033,10 +133067,10 @@ webhooks: enum: - assignees_changed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132117,10 +133151,10 @@ webhooks: enum: - auto_dismissed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132202,10 +133236,10 @@ webhooks: enum: - auto_reopened alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132287,10 +133321,10 @@ webhooks: enum: - created alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132370,10 +133404,10 @@ webhooks: enum: - dismissed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132453,10 +133487,10 @@ webhooks: enum: - fixed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132537,10 +133571,10 @@ webhooks: enum: - reintroduced alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132620,10 +133654,10 @@ webhooks: enum: - reopened alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -132700,9 +133734,9 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - key: &777 + enterprise: *767 + installation: *768 + key: &778 description: The [`deploy key`](https://docs.github.com/rest/deploy-keys/deploy-keys#get-a-deploy-key) resource. type: object @@ -132740,8 +133774,8 @@ webhooks: - verified - created_at - read_only - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -132818,11 +133852,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - key: *777 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + key: *778 + organization: *769 + repository: *770 sender: *4 required: - action @@ -133389,12 +134423,12 @@ webhooks: - updated_at - statuses_url - repository_url - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: &781 + workflow: &782 title: Workflow type: - object @@ -134149,9 +135183,9 @@ webhooks: pull_requests: type: array items: *602 - repository: *769 - organization: *768 - installation: *767 + repository: *770 + organization: *769 + installation: *768 sender: *4 responses: '200': @@ -134222,7 +135256,7 @@ webhooks: type: string enum: - approved - approver: &778 + approver: &779 type: object properties: avatar_url: @@ -134265,11 +135299,11 @@ webhooks: type: string comment: type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - reviewers: &779 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + reviewers: &780 type: array items: type: object @@ -134350,7 +135384,7 @@ webhooks: sender: *4 since: type: string - workflow_job_run: &780 + workflow_job_run: &781 type: object properties: conclusion: @@ -135096,18 +136130,18 @@ webhooks: type: string enum: - rejected - approver: *778 + approver: *779 comment: type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - reviewers: *779 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + reviewers: *780 sender: *4 since: type: string - workflow_job_run: *780 + workflow_job_run: *781 workflow_job_runs: type: array items: @@ -135824,13 +136858,13 @@ webhooks: type: string enum: - requested - enterprise: *766 + enterprise: *767 environment: type: string - installation: *767 - organization: *768 - repository: *769 - requestor: &786 + installation: *768 + organization: *769 + repository: *770 + requestor: &787 title: User type: - object @@ -137763,12 +138797,12 @@ webhooks: - updated_at - deployment_url - repository_url - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: *781 + workflow: *782 workflow_run: title: Deployment Workflow Run type: @@ -138459,7 +139493,7 @@ webhooks: type: string enum: - answered - answer: &784 + answer: &785 type: object properties: author_association: @@ -138619,11 +139653,11 @@ webhooks: - created_at - updated_at - body - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -138750,11 +139784,11 @@ webhooks: - from required: - category - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -138837,11 +139871,11 @@ webhooks: type: string enum: - closed - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -138923,7 +139957,7 @@ webhooks: type: string enum: - created - comment: &783 + comment: &784 type: object properties: author_association: @@ -139083,11 +140117,11 @@ webhooks: - updated_at - body - reactions - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139170,12 +140204,12 @@ webhooks: type: string enum: - deleted - comment: *783 - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + comment: *784 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139270,12 +140304,12 @@ webhooks: - from required: - body - comment: *783 - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + comment: *784 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139359,11 +140393,11 @@ webhooks: type: string enum: - created - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139445,11 +140479,11 @@ webhooks: type: string enum: - deleted - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139549,11 +140583,11 @@ webhooks: type: string required: - from - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139635,10 +140669,10 @@ webhooks: type: string enum: - labeled - discussion: *782 - enterprise: *766 - installation: *767 - label: &785 + discussion: *783 + enterprise: *767 + installation: *768 + label: &786 title: Label type: object properties: @@ -139671,8 +140705,8 @@ webhooks: - color - default - description - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139755,11 +140789,11 @@ webhooks: type: string enum: - locked - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139841,11 +140875,11 @@ webhooks: type: string enum: - pinned - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -139927,11 +140961,11 @@ webhooks: type: string enum: - reopened - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140016,16 +141050,16 @@ webhooks: changes: type: object properties: - new_discussion: *782 - new_repository: *769 + new_discussion: *783 + new_repository: *770 required: - new_discussion - new_repository - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140108,10 +141142,10 @@ webhooks: type: string enum: - unanswered - discussion: *782 - old_answer: *784 - organization: *768 - repository: *769 + discussion: *783 + old_answer: *785 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140193,12 +141227,12 @@ webhooks: type: string enum: - unlabeled - discussion: *782 - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140281,11 +141315,11 @@ webhooks: type: string enum: - unlocked - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140367,11 +141401,11 @@ webhooks: type: string enum: - unpinned - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140444,7 +141478,7 @@ webhooks: description: A user forks a repository. type: object properties: - enterprise: *766 + enterprise: *767 forkee: description: The created [`repository`](https://docs.github.com/rest/repos/repos#get-a-repository) resource. @@ -141122,9 +142156,9 @@ webhooks: type: integer watchers_count: type: integer - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - forkee @@ -141270,9 +142304,9 @@ webhooks: title: gollum event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pages: description: The pages that were updated. type: array @@ -141310,7 +142344,7 @@ webhooks: - action - sha - html_url - repository: *769 + repository: *770 sender: *4 required: - pages @@ -141386,10 +142420,10 @@ webhooks: type: string enum: - created - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: &787 + organization: *769 + repositories: &788 description: An array of repository objects that the installation can access. type: array @@ -141415,8 +142449,8 @@ webhooks: - name - full_name - private - repository: *769 - requester: *786 + repository: *770 + requester: *787 sender: *4 required: - action @@ -141491,11 +142525,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -141572,11 +142606,11 @@ webhooks: type: string enum: - new_permissions_accepted - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -141653,10 +142687,10 @@ webhooks: type: string enum: - added - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories_added: &788 + organization: *769 + repositories_added: &789 description: An array of repository objects, which were added to the installation. type: array @@ -141702,15 +142736,15 @@ webhooks: private: description: Whether the repository is private or public. type: boolean - repository: *769 - repository_selection: &789 + repository: *770 + repository_selection: &790 description: Describe whether all repositories have been selected or there's a selection involved type: string enum: - all - selected - requester: *786 + requester: *787 sender: *4 required: - action @@ -141789,10 +142823,10 @@ webhooks: type: string enum: - removed - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories_added: *788 + organization: *769 + repositories_added: *789 repositories_removed: description: An array of repository objects, which were removed from the installation. @@ -141819,9 +142853,9 @@ webhooks: - name - full_name - private - repository: *769 - repository_selection: *789 - requester: *786 + repository: *770 + repository_selection: *790 + requester: *787 sender: *4 required: - action @@ -141900,11 +142934,11 @@ webhooks: type: string enum: - suspend - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -142086,10 +143120,10 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 target_type: type: string @@ -142168,11 +143202,11 @@ webhooks: type: string enum: - unsuspend - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -142428,8 +143462,8 @@ webhooks: - performed_via_github_app - body - reactions - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -143241,8 +144275,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -143603,8 +144637,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -143684,7 +144718,7 @@ webhooks: type: string enum: - deleted - comment: &790 + comment: &791 title: issue comment description: The [comment](https://docs.github.com/rest/issues/comments#get-an-issue-comment) itself. @@ -143859,8 +144893,8 @@ webhooks: - performed_via_github_app - body - reactions - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -144668,8 +145702,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -145032,8 +146066,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -145113,7 +146147,7 @@ webhooks: type: string enum: - edited - changes: &814 + changes: &815 description: The changes to the comment. type: object properties: @@ -145125,9 +146159,9 @@ webhooks: type: string required: - from - comment: *790 - enterprise: *766 - installation: *767 + comment: *791 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -145938,8 +146972,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -146300,8 +147334,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -146382,9 +147416,9 @@ webhooks: type: string enum: - pinned - comment: *790 - enterprise: *766 - installation: *767 + comment: *791 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -147197,8 +148231,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -147561,8 +148595,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -147642,9 +148676,9 @@ webhooks: type: string enum: - unpinned - comment: *790 - enterprise: *766 - installation: *767 + comment: *791 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -148457,8 +149491,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -148821,8 +149855,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -148911,9 +149945,9 @@ webhooks: type: number blocking_issue: *83 blocking_issue_repo: *79 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -149002,9 +150036,9 @@ webhooks: type: number blocking_issue: *83 blocking_issue_repo: *79 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -149092,9 +150126,9 @@ webhooks: description: The ID of the blocking issue. type: number blocking_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -149183,9 +150217,9 @@ webhooks: description: The ID of the blocking issue. type: number blocking_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -149265,10 +150299,10 @@ webhooks: type: string enum: - assigned - assignee: *786 - enterprise: *766 - installation: *767 - issue: &791 + assignee: *787 + enterprise: *767 + installation: *768 + issue: &792 title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. @@ -150079,8 +151113,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -150203,8 +151237,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -150284,8 +151318,8 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. @@ -151101,8 +152135,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -151368,8 +152402,8 @@ webhooks: required: - state - closed_at - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -151448,8 +152482,8 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -152256,8 +153290,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -152379,8 +153413,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -152459,8 +153493,8 @@ webhooks: type: string enum: - demilestoned - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -153290,8 +154324,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -153392,7 +154426,7 @@ webhooks: format: uri user_view_type: type: string - milestone: &792 + milestone: &793 title: Milestone description: A collection of related issues and pull requests. type: object @@ -153535,8 +154569,8 @@ webhooks: - updated_at - due_on - closed_at - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -153635,8 +154669,8 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -154447,8 +155481,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -154571,9 +155605,9 @@ webhooks: - active_lock_reason - body - reactions - label: *785 - organization: *768 - repository: *769 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -154653,9 +155687,9 @@ webhooks: type: string enum: - field_added - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 issue_field: type: object description: The issue field whose value was set or updated on the @@ -154821,8 +155855,8 @@ webhooks: - id required: - from - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -154902,9 +155936,9 @@ webhooks: type: string enum: - field_removed - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 issue_field: type: object description: The issue field whose value was cleared from the issue. @@ -154991,8 +156025,8 @@ webhooks: - 'null' required: - id - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -155072,8 +156106,8 @@ webhooks: type: string enum: - labeled - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -155883,8 +156917,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -156007,9 +157041,9 @@ webhooks: - active_lock_reason - body - reactions - label: *785 - organization: *768 - repository: *769 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -156089,8 +157123,8 @@ webhooks: type: string enum: - locked - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -156925,8 +157959,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -157026,8 +158060,8 @@ webhooks: format: uri user_view_type: type: string - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -157106,8 +158140,8 @@ webhooks: type: string enum: - milestoned - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -157936,8 +158970,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -158037,9 +159071,9 @@ webhooks: format: uri user_view_type: type: string - milestone: *792 - organization: *768 - repository: *769 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -158926,8 +159960,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -159522,8 +160556,8 @@ webhooks: required: - old_issue - old_repository - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -160330,8 +161364,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -160457,8 +161491,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -160538,9 +161572,9 @@ webhooks: type: string enum: - pinned - enterprise: *766 - installation: *767 - issue: &793 + enterprise: *767 + installation: *768 + issue: &794 title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. @@ -161345,8 +162379,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -161468,8 +162502,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -161548,8 +162582,8 @@ webhooks: type: string enum: - reopened - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -162382,8 +163416,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -162484,8 +163518,8 @@ webhooks: user_view_type: type: string type: *246 - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -163373,8 +164407,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -163987,11 +165021,11 @@ webhooks: required: - new_issue - new_repository - enterprise: *766 - installation: *767 - issue: *793 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *794 + organization: *769 + repository: *770 sender: *4 required: - action @@ -164071,12 +165105,12 @@ webhooks: type: string enum: - typed - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 type: *246 - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -164157,7 +165191,7 @@ webhooks: type: string enum: - unassigned - assignee: &817 + assignee: &818 title: User type: - object @@ -164229,11 +165263,11 @@ webhooks: required: - login - id - enterprise: *766 - installation: *767 - issue: *791 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *792 + organization: *769 + repository: *770 sender: *4 required: - action @@ -164312,12 +165346,12 @@ webhooks: type: string enum: - unlabeled - enterprise: *766 - installation: *767 - issue: *791 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *792 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -164397,8 +165431,8 @@ webhooks: type: string enum: - unlocked - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -165231,8 +166265,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -165332,8 +166366,8 @@ webhooks: format: uri user_view_type: type: string - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165413,11 +166447,11 @@ webhooks: type: string enum: - unpinned - enterprise: *766 - installation: *767 - issue: *793 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *794 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165496,12 +166530,12 @@ webhooks: type: string enum: - untyped - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 type: *246 - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165581,11 +166615,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165663,11 +166697,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165777,11 +166811,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165863,9 +166897,9 @@ webhooks: - cancelled effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: &794 + enterprise: *767 + installation: *768 + marketplace_purchase: &795 title: Marketplace Purchase type: object required: @@ -165953,8 +166987,8 @@ webhooks: type: integer unit_count: type: integer - organization: *768 - previous_marketplace_purchase: &795 + organization: *769 + previous_marketplace_purchase: &796 title: Marketplace Purchase type: object properties: @@ -166038,7 +167072,7 @@ webhooks: - on_free_trial - free_trial_ends_on - plan - repository: *769 + repository: *770 sender: *4 required: - action @@ -166118,10 +167152,10 @@ webhooks: - changed effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: *794 - organization: *768 + enterprise: *767 + installation: *768 + marketplace_purchase: *795 + organization: *769 previous_marketplace_purchase: title: Marketplace Purchase type: object @@ -166209,7 +167243,7 @@ webhooks: - on_free_trial - free_trial_ends_on - plan - repository: *769 + repository: *770 sender: *4 required: - action @@ -166291,10 +167325,10 @@ webhooks: - pending_change effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: *794 - organization: *768 + enterprise: *767 + installation: *768 + marketplace_purchase: *795 + organization: *769 previous_marketplace_purchase: title: Marketplace Purchase type: object @@ -166380,7 +167414,7 @@ webhooks: - on_free_trial - free_trial_ends_on - plan - repository: *769 + repository: *770 sender: *4 required: - action @@ -166461,8 +167495,8 @@ webhooks: - pending_change_cancelled effective_date: type: string - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 marketplace_purchase: title: Marketplace Purchase type: object @@ -166548,9 +167582,9 @@ webhooks: type: integer unit_count: type: integer - organization: *768 - previous_marketplace_purchase: *795 - repository: *769 + organization: *769 + previous_marketplace_purchase: *796 + repository: *770 sender: *4 required: - action @@ -166630,12 +167664,12 @@ webhooks: - purchased effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: *794 - organization: *768 - previous_marketplace_purchase: *795 - repository: *769 + enterprise: *767 + installation: *768 + marketplace_purchase: *795 + organization: *769 + previous_marketplace_purchase: *796 + repository: *770 sender: *4 required: - action @@ -166737,11 +167771,11 @@ webhooks: type: string required: - to - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 sender: *4 required: - action @@ -166843,11 +167877,11 @@ webhooks: type: - string - 'null' - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 sender: *4 required: - action @@ -166926,11 +167960,11 @@ webhooks: type: string enum: - removed - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 sender: *4 required: - action @@ -167008,11 +168042,11 @@ webhooks: type: string enum: - added - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 scope: description: The scope of the membership. Currently, can only be `team`. @@ -167090,7 +168124,7 @@ webhooks: required: - login - id - team: &796 + team: &797 title: Team description: Groups of organization members that gives permissions on specified repositories. @@ -167320,11 +168354,11 @@ webhooks: type: string enum: - removed - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 scope: description: The scope of the membership. Currently, can only be `team`. @@ -167403,7 +168437,7 @@ webhooks: required: - login - id - team: *796 + team: *797 required: - action - scope @@ -167485,8 +168519,8 @@ webhooks: type: string enum: - checks_requested - installation: *767 - merge_group: &797 + installation: *768 + merge_group: &798 type: object title: Merge Group description: A group of pull requests that the merge queue has grouped @@ -167512,8 +168546,8 @@ webhooks: - base_sha - base_ref - head_commit - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -167599,10 +168633,10 @@ webhooks: - merged - invalidated - dequeued - installation: *767 - merge_group: *797 - organization: *768 - repository: *769 + installation: *768 + merge_group: *798 + organization: *769 + repository: *770 sender: *4 required: - action @@ -167675,7 +168709,7 @@ webhooks: type: string enum: - deleted - enterprise: *766 + enterprise: *767 hook: description: 'The deleted webhook. This will contain different keys based on the type of webhook it is: repository, organization, @@ -167784,12 +168818,12 @@ webhooks: hook_id: description: The id of the modified webhook. type: integer - installation: *767 - organization: *768 + installation: *768 + organization: *769 repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -167869,11 +168903,11 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 - milestone: *792 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -167952,9 +168986,9 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - milestone: &798 + enterprise: *767 + installation: *768 + milestone: &799 title: Milestone description: A collection of related issues and pull requests. type: object @@ -168096,8 +169130,8 @@ webhooks: - updated_at - due_on - closed_at - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168176,11 +169210,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - milestone: *792 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168290,11 +169324,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - milestone: *792 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168374,11 +169408,11 @@ webhooks: type: string enum: - opened - enterprise: *766 - installation: *767 - milestone: *798 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *799 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168457,11 +169491,11 @@ webhooks: type: string enum: - blocked - blocked_user: *786 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + blocked_user: *787 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168540,11 +169574,11 @@ webhooks: type: string enum: - unblocked - blocked_user: *786 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + blocked_user: *787 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168623,9 +169657,9 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - membership: &799 + enterprise: *767 + installation: *768 + membership: &800 title: Membership description: The membership between the user and the organization. Not present when the action is `member_invited`. @@ -168735,8 +169769,8 @@ webhooks: - role - organization_url - user - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168814,11 +169848,11 @@ webhooks: type: string enum: - member_added - enterprise: *766 - installation: *767 - membership: *799 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + membership: *800 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168897,8 +169931,8 @@ webhooks: type: string enum: - member_invited - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 invitation: description: The invitation for the user or email if the action is `member_invited`. @@ -169020,10 +170054,10 @@ webhooks: - inviter - team_count - invitation_teams_url - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 - user: *786 + user: *787 required: - action - invitation @@ -169101,11 +170135,11 @@ webhooks: type: string enum: - member_removed - enterprise: *766 - installation: *767 - membership: *799 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + membership: *800 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169192,11 +170226,11 @@ webhooks: properties: from: type: string - enterprise: *766 - installation: *767 - membership: *799 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + membership: *800 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169273,9 +170307,9 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 package: description: Information about the package. type: object @@ -169798,7 +170832,7 @@ webhooks: - published_at rubygems_metadata: type: array - items: &800 + items: &801 title: Ruby Gems metadata type: object properties: @@ -169895,7 +170929,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -169971,9 +171005,9 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 package: description: Information about the package. type: object @@ -170335,7 +171369,7 @@ webhooks: - published_at rubygems_metadata: type: array - items: *800 + items: *801 source_url: type: string format: uri @@ -170406,7 +171440,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -170586,12 +171620,12 @@ webhooks: - duration - created_at - updated_at - enterprise: *766 + enterprise: *767 id: type: integer - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - id @@ -170668,7 +171702,7 @@ webhooks: type: string enum: - approved - personal_access_token_request: &801 + personal_access_token_request: &802 title: Personal Access Token Request description: Details of a Personal Access Token Request. type: object @@ -170818,10 +171852,10 @@ webhooks: - token_expired - token_expires_at - token_last_used_at - enterprise: *766 - organization: *768 + enterprise: *767 + organization: *769 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -170898,11 +171932,11 @@ webhooks: type: string enum: - cancelled - personal_access_token_request: *801 - enterprise: *766 - organization: *768 + personal_access_token_request: *802 + enterprise: *767 + organization: *769 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -170978,11 +172012,11 @@ webhooks: type: string enum: - created - personal_access_token_request: *801 - enterprise: *766 - organization: *768 + personal_access_token_request: *802 + enterprise: *767 + organization: *769 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -171057,11 +172091,11 @@ webhooks: type: string enum: - denied - personal_access_token_request: *801 - organization: *768 - enterprise: *766 + personal_access_token_request: *802 + organization: *769 + enterprise: *767 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -171166,7 +172200,7 @@ webhooks: id: description: Unique identifier of the webhook. type: integer - last_response: *802 + last_response: *803 name: description: The type of webhook. The only valid value is 'web'. type: string @@ -171198,8 +172232,8 @@ webhooks: hook_id: description: The ID of the webhook that triggered the ping. type: integer - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 zen: description: Random string of GitHub zen. @@ -171444,10 +172478,10 @@ webhooks: - from required: - note - enterprise: *766 - installation: *767 - organization: *768 - project_card: &803 + enterprise: *767 + installation: *768 + organization: *769 + project_card: &804 title: Project Card type: object properties: @@ -171570,7 +172604,7 @@ webhooks: - creator - created_at - updated_at - repository: *769 + repository: *770 sender: *4 required: - action @@ -171651,11 +172685,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - project_card: *803 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_card: *804 + repository: *770 sender: *4 required: - action @@ -171735,9 +172769,9 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 project_card: title: Project Card type: object @@ -171867,7 +172901,7 @@ webhooks: repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -171961,11 +172995,11 @@ webhooks: - from required: - note - enterprise: *766 - installation: *767 - organization: *768 - project_card: *803 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_card: *804 + repository: *770 sender: *4 required: - action @@ -172059,9 +173093,9 @@ webhooks: - from required: - column_id - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 project_card: allOf: - title: Project Card @@ -172258,7 +173292,7 @@ webhooks: type: string required: - after_id - repository: *769 + repository: *770 sender: *4 required: - action @@ -172338,10 +173372,10 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 - organization: *768 - project: &805 + enterprise: *767 + installation: *768 + organization: *769 + project: &806 title: Project type: object properties: @@ -172468,7 +173502,7 @@ webhooks: - creator - created_at - updated_at - repository: *769 + repository: *770 sender: *4 required: - action @@ -172548,10 +173582,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - project_column: &804 + enterprise: *767 + installation: *768 + organization: *769 + project_column: &805 title: Project Column type: object properties: @@ -172591,7 +173625,7 @@ webhooks: - name - created_at - updated_at - repository: *769 + repository: *770 sender: *4 required: - action @@ -172670,14 +173704,14 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - project_column: *804 + enterprise: *767 + installation: *768 + organization: *769 + project_column: *805 repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -172766,11 +173800,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - project_column: *804 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_column: *805 + repository: *770 sender: *4 required: - action @@ -172850,11 +173884,11 @@ webhooks: type: string enum: - moved - enterprise: *766 - installation: *767 - organization: *768 - project_column: *804 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_column: *805 + repository: *770 sender: *4 required: - action @@ -172934,11 +173968,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - project: *805 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 + repository: *770 sender: *4 required: - action @@ -173018,14 +174052,14 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - project: *805 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -173126,11 +174160,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - project: *805 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 + repository: *770 sender: *4 required: - action @@ -173209,11 +174243,11 @@ webhooks: type: string enum: - reopened - enterprise: *766 - installation: *767 - organization: *768 - project: *805 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 + repository: *770 sender: *4 required: - action @@ -173294,8 +174328,8 @@ webhooks: type: string enum: - closed - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -173377,8 +174411,8 @@ webhooks: type: string enum: - created - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -173460,8 +174494,8 @@ webhooks: type: string enum: - deleted - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -173583,8 +174617,8 @@ webhooks: type: string to: type: string - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -173668,7 +174702,7 @@ webhooks: type: string enum: - archived - changes: &809 + changes: &810 type: object properties: archived_at: @@ -173684,9 +174718,9 @@ webhooks: - string - 'null' format: date-time - installation: *767 - organization: *768 - projects_v2_item: &806 + installation: *768 + organization: *769 + projects_v2_item: &807 title: Projects v2 Item description: An item belonging to a project type: object @@ -173826,9 +174860,9 @@ webhooks: - 'null' to: type: string - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -173910,9 +174944,9 @@ webhooks: type: string enum: - created - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -173993,9 +175027,9 @@ webhooks: type: string enum: - deleted - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -174100,7 +175134,7 @@ webhooks: oneOf: - type: string - type: integer - - &807 + - &808 title: Projects v2 Single Select Option description: An option for a single select field type: object @@ -174124,7 +175158,7 @@ webhooks: required: - id - name - - &808 + - &809 title: Projects v2 Iteration Setting description: An iteration setting for an iteration field type: object @@ -174164,8 +175198,8 @@ webhooks: oneOf: - type: string - type: integer - - *807 - *808 + - *809 type: - 'null' - string @@ -174188,9 +175222,9 @@ webhooks: - 'null' required: - body - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -174287,9 +175321,9 @@ webhooks: type: - string - 'null' - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -174372,10 +175406,10 @@ webhooks: type: string enum: - restored - changes: *809 - installation: *767 - organization: *768 - projects_v2_item: *806 + changes: *810 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -174457,8 +175491,8 @@ webhooks: type: string enum: - reopened - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -174540,9 +175574,9 @@ webhooks: type: string enum: - created - installation: *767 - organization: *768 - projects_v2_status_update: *810 + installation: *768 + organization: *769 + projects_v2_status_update: *811 sender: *4 required: - action @@ -174623,9 +175657,9 @@ webhooks: type: string enum: - deleted - installation: *767 - organization: *768 - projects_v2_status_update: *810 + installation: *768 + organization: *769 + projects_v2_status_update: *811 sender: *4 required: - action @@ -174771,9 +175805,9 @@ webhooks: - string - 'null' format: date - installation: *767 - organization: *768 - projects_v2_status_update: *810 + installation: *768 + organization: *769 + projects_v2_status_update: *811 sender: *4 required: - action @@ -174844,10 +175878,10 @@ webhooks: title: public event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - repository @@ -174924,13 +175958,13 @@ webhooks: type: string enum: - assigned - assignee: *786 - enterprise: *766 - installation: *767 - number: &811 + assignee: *787 + enterprise: *767 + installation: *768 + number: &812 description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -177283,7 +178317,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -177365,11 +178399,11 @@ webhooks: type: string enum: - auto_merge_disabled - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -179715,7 +180749,7 @@ webhooks: - draft reason: type: string - repository: *769 + repository: *770 sender: *4 required: - action @@ -179797,11 +180831,11 @@ webhooks: type: string enum: - auto_merge_enabled - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -182147,7 +183181,7 @@ webhooks: - draft reason: type: string - repository: *769 + repository: *770 sender: *4 required: - action @@ -182229,11 +183263,11 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: &812 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: &813 allOf: - *602 - type: object @@ -182297,7 +183331,7 @@ webhooks: Please use `squash_merge_commit_title` instead.** type: boolean default: false - repository: *769 + repository: *770 sender: *4 required: - action @@ -182378,12 +183412,12 @@ webhooks: type: string enum: - converted_to_draft - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -182463,11 +183497,11 @@ webhooks: type: string enum: - demilestoned - enterprise: *766 + enterprise: *767 milestone: *282 - number: *811 - organization: *768 - pull_request: &813 + number: *812 + organization: *769 + pull_request: &814 title: Pull Request type: object properties: @@ -184812,7 +185846,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -184891,11 +185925,11 @@ webhooks: type: string enum: - dequeued - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -187259,7 +188293,7 @@ webhooks: - BRANCH_PROTECTIONS - GIT_TREE_INVALID - INVALID_MERGE_COMMIT - repository: *769 + repository: *770 sender: *4 required: - action @@ -187383,12 +188417,12 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -187468,11 +188502,11 @@ webhooks: type: string enum: - enqueued - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -189821,7 +190855,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -189901,11 +190935,11 @@ webhooks: type: string enum: - labeled - enterprise: *766 - installation: *767 - label: *785 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + label: *786 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -192257,7 +193291,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -192338,10 +193372,10 @@ webhooks: type: string enum: - locked - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -194691,7 +195725,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -194771,12 +195805,12 @@ webhooks: type: string enum: - milestoned - enterprise: *766 + enterprise: *767 milestone: *282 - number: *811 - organization: *768 - pull_request: *813 - repository: *769 + number: *812 + organization: *769 + pull_request: *814 + repository: *770 sender: *4 required: - action @@ -194855,12 +195889,12 @@ webhooks: type: string enum: - opened - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -194941,12 +195975,12 @@ webhooks: type: string enum: - ready_for_review - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -195026,12 +196060,12 @@ webhooks: type: string enum: - reopened - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -195406,9 +196440,9 @@ webhooks: - start_side - side - reactions - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: type: object properties: @@ -197642,7 +198676,7 @@ webhooks: - _links - author_association - active_lock_reason - repository: *769 + repository: *770 sender: *4 required: - action @@ -197722,7 +198756,7 @@ webhooks: type: string enum: - deleted - comment: &815 + comment: &816 title: Pull Request Review Comment description: The [comment](https://docs.github.com/rest/pulls/comments#get-a-review-comment-for-a-pull-request) itself. @@ -198015,9 +199049,9 @@ webhooks: - start_side - side - reactions - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: type: object properties: @@ -200239,7 +201273,7 @@ webhooks: - _links - author_association - active_lock_reason - repository: *769 + repository: *770 sender: *4 required: - action @@ -200319,11 +201353,11 @@ webhooks: type: string enum: - edited - changes: *814 - comment: *815 - enterprise: *766 - installation: *767 - organization: *768 + changes: *815 + comment: *816 + enterprise: *767 + installation: *768 + organization: *769 pull_request: type: object properties: @@ -202548,7 +203582,7 @@ webhooks: - _links - author_association - active_lock_reason - repository: *769 + repository: *770 sender: *4 required: - action @@ -202629,9 +203663,9 @@ webhooks: type: string enum: - dismissed - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -204868,7 +205902,7 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 + repository: *770 review: description: The review that was affected. type: object @@ -205119,9 +206153,9 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -207230,8 +208264,8 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 - review: &816 + repository: *770 + review: &817 description: The review that was affected. type: object properties: @@ -207469,12 +208503,12 @@ webhooks: type: string enum: - review_request_removed - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -209825,7 +210859,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_reviewer: title: User type: @@ -209911,12 +210945,12 @@ webhooks: type: string enum: - review_request_removed - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -212274,7 +213308,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_team: title: Team description: Groups of organization members that gives permissions @@ -212469,12 +213503,12 @@ webhooks: type: string enum: - review_requested - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -214827,7 +215861,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_reviewer: title: User type: @@ -214914,12 +215948,12 @@ webhooks: type: string enum: - review_requested - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -217263,7 +218297,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_team: title: Team description: Groups of organization members that gives permissions @@ -217447,9 +218481,9 @@ webhooks: type: string enum: - submitted - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -219689,8 +220723,8 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 - review: *816 + repository: *770 + review: *817 sender: *4 required: - action @@ -219770,9 +220804,9 @@ webhooks: type: string enum: - resolved - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -221921,7 +222955,7 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 + repository: *770 sender: *4 thread: type: object @@ -222318,9 +223352,9 @@ webhooks: type: string enum: - unresolved - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -224452,7 +225486,7 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 + repository: *770 sender: *4 thread: type: object @@ -224845,11 +225879,11 @@ webhooks: type: string enum: - stacked - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 stack: *599 - number: *811 - organization: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -227201,7 +228235,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -227287,10 +228321,10 @@ webhooks: type: string before: type: string - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -229629,7 +230663,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -229711,11 +230745,11 @@ webhooks: type: string enum: - unassigned - assignee: *817 - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + assignee: *818 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -232069,7 +233103,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -232148,11 +233182,11 @@ webhooks: type: string enum: - unlabeled - enterprise: *766 - installation: *767 - label: *785 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + label: *786 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -234495,7 +235529,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -234576,10 +235610,10 @@ webhooks: type: string enum: - unlocked - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -236912,7 +237946,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -237115,7 +238149,7 @@ webhooks: deleted: description: Whether this push deleted the `ref`. type: boolean - enterprise: *766 + enterprise: *767 forced: description: Whether this push was a force push of the `ref`. type: boolean @@ -237210,8 +238244,8 @@ webhooks: - url - author - committer - installation: *767 - organization: *768 + installation: *768 + organization: *769 pusher: title: Committer description: Metaproperties for Git author/committer information. @@ -237810,9 +238844,9 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 registry_package: type: object properties: @@ -238289,7 +239323,7 @@ webhooks: type: string rubygems_metadata: type: array - items: *800 + items: *801 summary: type: string tag_name: @@ -238345,7 +239379,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -238423,9 +239457,9 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 registry_package: type: object properties: @@ -238737,7 +239771,7 @@ webhooks: - published_at rubygems_metadata: type: array - items: *800 + items: *801 summary: type: string tag_name: @@ -238787,7 +239821,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -238864,10 +239898,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - release: &818 + enterprise: *767 + installation: *768 + organization: *769 + release: &819 title: Release description: The [release](https://docs.github.com/rest/releases/releases/#get-a-release) object. @@ -239198,7 +240232,7 @@ webhooks: - updated_at - zipball_url - body - repository: *769 + repository: *770 sender: *4 required: - action @@ -239275,11 +240309,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - release: *818 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *819 + repository: *770 sender: *4 required: - action @@ -239396,11 +240430,11 @@ webhooks: type: boolean required: - to - enterprise: *766 - installation: *767 - organization: *768 - release: *818 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *819 + repository: *770 sender: *4 required: - action @@ -239478,9 +240512,9 @@ webhooks: type: string enum: - prereleased - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 release: title: Release description: The [release](https://docs.github.com/rest/releases/releases/#get-a-release) @@ -239816,7 +240850,7 @@ webhooks: - string - 'null' format: uri - repository: *769 + repository: *770 sender: *4 required: - action @@ -239892,10 +240926,10 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 - release: &819 + enterprise: *767 + installation: *768 + organization: *769 + release: &820 title: Release description: The [release](https://docs.github.com/rest/releases/releases/#get-a-release) object. @@ -240228,7 +241262,7 @@ webhooks: - string - 'null' format: uri - repository: *769 + repository: *770 sender: *4 required: - action @@ -240304,11 +241338,11 @@ webhooks: type: string enum: - released - enterprise: *766 - installation: *767 - organization: *768 - release: *818 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *819 + repository: *770 sender: *4 required: - action @@ -240384,11 +241418,11 @@ webhooks: type: string enum: - unpublished - enterprise: *766 - installation: *767 - organization: *768 - release: *819 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *820 + repository: *770 sender: *4 required: - action @@ -240464,10 +241498,10 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_advisory: *687 sender: *4 required: @@ -240544,10 +241578,10 @@ webhooks: type: string enum: - reported - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_advisory: *687 sender: *4 required: @@ -240624,10 +241658,10 @@ webhooks: type: string enum: - archived - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -240704,10 +241738,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -240785,10 +241819,10 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -240873,10 +241907,10 @@ webhooks: additionalProperties: true description: The `client_payload` that was specified in the `POST /repos/{owner}/{repo}/dispatches` request body. - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -240991,10 +242025,10 @@ webhooks: - 'null' items: type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -241066,10 +242100,10 @@ webhooks: title: repository_import event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 status: type: string @@ -241150,10 +242184,10 @@ webhooks: type: string enum: - privatized - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -241230,10 +242264,10 @@ webhooks: type: string enum: - publicized - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -241327,10 +242361,10 @@ webhooks: - name required: - repository - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -241410,10 +242444,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_ruleset: *324 sender: *4 required: @@ -241492,10 +242526,10 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_ruleset: *324 sender: *4 required: @@ -241574,10 +242608,10 @@ webhooks: type: string enum: - edited - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_ruleset: *324 changes: type: object @@ -241885,10 +242919,10 @@ webhooks: - from required: - owner - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -241966,10 +243000,10 @@ webhooks: type: string enum: - unarchived - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242047,7 +243081,7 @@ webhooks: type: string enum: - create - alert: &820 + alert: &821 title: Repository Vulnerability Alert Alert description: The security alert of the vulnerable dependency. type: object @@ -242172,10 +243206,10 @@ webhooks: enum: - auto_dismissed - open - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242385,10 +243419,10 @@ webhooks: type: string enum: - dismissed - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242466,11 +243500,11 @@ webhooks: type: string enum: - reopen - alert: *820 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *821 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242672,10 +243706,10 @@ webhooks: enum: - fixed - open - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242753,7 +243787,7 @@ webhooks: type: string enum: - assigned - alert: &822 + alert: &823 type: object properties: number: *181 @@ -242900,12 +243934,12 @@ webhooks: anyOf: - type: 'null' - *4 - metadata: *821 + metadata: *822 assignee: *4 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242983,11 +244017,11 @@ webhooks: type: string enum: - created - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243068,11 +244102,11 @@ webhooks: type: string enum: - created - alert: *822 - installation: *767 - location: *823 - organization: *768 - repository: *769 + alert: *823 + installation: *768 + location: *824 + organization: *769 + repository: *770 sender: *4 required: - location @@ -243310,11 +244344,11 @@ webhooks: type: string enum: - metadata_created - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243391,11 +244425,11 @@ webhooks: type: string enum: - metadata_removed - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243472,11 +244506,11 @@ webhooks: type: string enum: - publicly_leaked - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243554,11 +244588,11 @@ webhooks: type: string enum: - reopened - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243636,11 +244670,11 @@ webhooks: type: string enum: - resolved - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243718,12 +244752,12 @@ webhooks: type: string enum: - unassigned - alert: *822 + alert: *823 assignee: *4 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243801,11 +244835,11 @@ webhooks: type: string enum: - validated - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243935,10 +244969,10 @@ webhooks: - organization - enterprise - - repository: *769 - enterprise: *766 - installation: *767 - organization: *768 + repository: *770 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -244016,11 +245050,11 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - security_advisory: &824 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + security_advisory: &825 description: The details of the security advisory, including summary, description, and severity. type: object @@ -244193,11 +245227,11 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - security_advisory: *824 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + security_advisory: *825 sender: *4 required: - action @@ -244270,10 +245304,10 @@ webhooks: type: string enum: - withdrawn - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 security_advisory: description: The details of the security advisory, including summary, description, and severity. @@ -244447,9 +245481,9 @@ webhooks: type: object properties: security_and_analysis: *297 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: *343 sender: *4 required: @@ -244528,12 +245562,12 @@ webhooks: type: string enum: - cancelled - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: &825 + sponsorship: &826 type: object properties: created_at: @@ -244838,12 +245872,12 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - sponsorship @@ -244931,12 +245965,12 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - changes @@ -245013,17 +246047,17 @@ webhooks: type: string enum: - pending_cancellation - effective_date: &826 + effective_date: &827 description: The `pending_cancellation` and `pending_tier_change` event types will include the date the cancellation or tier change will take effect. type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - sponsorship @@ -245097,7 +246131,7 @@ webhooks: type: string enum: - pending_tier_change - changes: &827 + changes: &828 type: object properties: tier: @@ -245141,13 +246175,13 @@ webhooks: - from required: - tier - effective_date: *826 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + effective_date: *827 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - changes @@ -245224,13 +246258,13 @@ webhooks: type: string enum: - tier_changed - changes: *827 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + changes: *828 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - changes @@ -245304,10 +246338,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 starred_at: description: 'The time the star was created. This is a timestamp @@ -245391,10 +246425,10 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 starred_at: description: 'The time the star was created. This is a timestamp @@ -245828,15 +246862,15 @@ webhooks: type: - string - 'null' - enterprise: *766 + enterprise: *767 id: description: The unique identifier of the status. type: integer - installation: *767 + installation: *768 name: type: string - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 sha: description: The Commit SHA. @@ -245952,9 +246986,9 @@ webhooks: description: The ID of the sub-issue. type: number sub_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -246043,9 +247077,9 @@ webhooks: description: The ID of the sub-issue. type: number sub_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -246134,9 +247168,9 @@ webhooks: description: The ID of the parent issue. type: number parent_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -246225,9 +247259,9 @@ webhooks: description: The ID of the parent issue. type: number parent_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -246303,12 +247337,12 @@ webhooks: title: team_add event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - team: &828 + team: &829 title: Team description: Groups of organization members that gives permissions on specified repositories. @@ -246538,9 +247572,9 @@ webhooks: type: string enum: - added_to_repository - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -247010,7 +248044,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -247086,9 +248120,9 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -247558,7 +248592,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -247635,9 +248669,9 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -248107,7 +249141,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -248251,9 +249285,9 @@ webhooks: - from required: - permissions - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -248723,7 +249757,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - changes @@ -248801,9 +249835,9 @@ webhooks: type: string enum: - removed_from_repository - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -249273,7 +250307,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -249349,10 +250383,10 @@ webhooks: type: string enum: - started - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -249425,17 +250459,17 @@ webhooks: title: workflow_dispatch event type: object properties: - enterprise: *766 + enterprise: *767 inputs: type: - object - 'null' additionalProperties: true - installation: *767 - organization: *768 + installation: *768 + organization: *769 ref: type: string - repository: *769 + repository: *770 sender: *4 workflow: type: string @@ -249517,10 +250551,10 @@ webhooks: type: string enum: - completed - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 workflow_job: allOf: @@ -249855,10 +250889,10 @@ webhooks: type: string enum: - in_progress - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 workflow_job: allOf: @@ -250219,10 +251253,10 @@ webhooks: type: string enum: - queued - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 workflow_job: type: object @@ -250447,10 +251481,10 @@ webhooks: type: string enum: - waiting - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 workflow_job: type: object @@ -250677,12 +251711,12 @@ webhooks: type: string enum: - completed - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: *781 + workflow: *782 workflow_run: title: Workflow Run type: object @@ -251701,12 +252735,12 @@ webhooks: type: string enum: - in_progress - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: *781 + workflow: *782 workflow_run: title: Workflow Run type: object @@ -252710,12 +253744,12 @@ webhooks: type: string enum: - requested - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: *781 + workflow: *782 workflow_run: title: Workflow Run type: object diff --git a/descriptions-next/api.github.com/dereferenced/api.github.com.deref.json b/descriptions-next/api.github.com/dereferenced/api.github.com.deref.json index fa96e01eda..108a94c7fe 100644 --- a/descriptions-next/api.github.com/dereferenced/api.github.com.deref.json +++ b/descriptions-next/api.github.com/dereferenced/api.github.com.deref.json @@ -368850,960 +368850,20 @@ "url" ] } - } - }, - "required": [ - "number", - "created_at", - "url", - "html_url", - "instances_url", - "state", - "dismissed_by", - "dismissed_at", - "dismissed_reason", - "rule", - "tool", - "most_recent_instance" - ] - }, - "examples": { - "default": { - "value": { - "number": 42, - "created_at": "2020-06-19T11:21:34Z", - "url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42", - "html_url": "https://github.com/octocat/hello-world/code-scanning/42", - "state": "dismissed", - "fixed_at": null, - "dismissed_by": { - "login": "octocat", - "id": 54933897, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "dismissed_at": "2020-02-14T12:29:18Z", - "dismissed_reason": "false positive", - "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", - "rule": { - "id": "js/zipslip", - "severity": "error", - "security_severity_level": "high", - "description": "Arbitrary file write during zip extraction (\"Zip Slip\")", - "name": "js/zipslip", - "full_description": "Extracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten.", - "tags": [ - "security", - "external/cwe/cwe-022" - ], - "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", - "help_uri": "https://codeql.github.com/" - }, - "tool": { - "name": "CodeQL", - "guid": null, - "version": "2.4.0" - }, - "most_recent_instance": { - "ref": "refs/heads/main", - "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", - "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", - "environment": "{}", - "state": "dismissed", - "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", - "message": { - "text": "This path depends on a user-provided value." - }, - "location": { - "path": "spec-main/api-session-spec.ts", - "start_line": 917, - "end_line": 917, - "start_column": 7, - "end_column": 18 - }, - "classifications": [ - "test" - ] - }, - "instances_url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances" - } - } - } - } - } - }, - "304": { - "description": "Not modified" - }, - "403": { - "description": "Response if GitHub Advanced Security is not enabled for this repository", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "404": { - "description": "Resource not found", - "content": { - "application/json": { - "schema": { - "title": "Basic Error", - "description": "Basic Error", - "type": "object", - "properties": { - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - }, - "url": { - "type": "string" - }, - "status": { - "type": "string" - } - } - } - } - } - }, - "503": { - "description": "Service unavailable", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "message": { - "type": "string" - }, - "documentation_url": { - "type": "string" - } - } - } - } - } - } - }, - "x-github": { - "githubCloudOnly": false, - "enabledForGitHubApps": true, - "category": "code-scanning", - "subcategory": "code-scanning" - } - }, - "patch": { - "summary": "Update a code scanning alert", - "description": "Updates the status of a single code scanning alert.\nOAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.", - "operationId": "code-scanning/update-alert", - "tags": [ - "code-scanning" - ], - "externalDocs": { - "description": "API method documentation", - "url": "https://docs.github.com/rest/code-scanning/code-scanning#update-a-code-scanning-alert" - }, - "parameters": [ - { - "name": "owner", - "description": "The account owner of the repository. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "repo", - "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", - "in": "path", - "required": true, - "schema": { - "type": "string" - } - }, - { - "name": "alert_number", - "in": "path", - "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", - "required": true, - "schema": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "state": { - "description": "Sets the state of the code scanning alert. You must provide `dismissed_reason` when you set the state to `dismissed`.", - "type": "string", - "enum": [ - "open", - "dismissed" - ] - }, - "dismissed_reason": { - "type": [ - "string", - "null" - ], - "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", - "enum": [ - "false positive", - "won't fix", - "used in tests", - null - ] - }, - "dismissed_comment": { - "type": [ - "string", - "null" - ], - "description": "The dismissal comment associated with the dismissal of the alert.", - "maxLength": 280 - }, - "create_request": { - "type": "boolean", - "description": "If `true`, attempt to create an alert dismissal request." - }, - "assignees": { - "description": "The list of users to assign to the code scanning alert. An empty array unassigns all previous assignees from the alert.", - "type": "array", - "items": { - "type": "string" - } - } - }, - "anyOf": [ - { - "required": [ - "state" - ] - }, - { - "required": [ - "assignees" - ] - } - ] - }, - "examples": { - "default": { - "value": { - "state": "dismissed", - "dismissed_reason": "false positive", - "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", - "create_request": true - } - } - } - } - } - }, - "responses": { - "200": { - "description": "Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "number": { - "type": "integer", - "description": "The security alert number.", - "readOnly": true - }, - "created_at": { - "type": "string", - "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "updated_at": { - "type": "string", - "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "url": { - "type": "string", - "description": "The REST API URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "html_url": { - "type": "string", - "description": "The GitHub URL of the alert resource.", - "format": "uri", - "readOnly": true - }, - "instances_url": { - "type": "string", - "description": "The REST API URL for fetching the list of instances for an alert.", - "format": "uri", - "readOnly": true - }, - "state": { - "type": [ - "string", - "null" - ], - "description": "State of a code scanning alert.", - "enum": [ - "open", - "dismissed", - "fixed", - null - ] - }, - "fixed_at": { - "type": [ - "string", - "null" - ], - "description": "The time that the alert was no longer detected and was considered fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "dismissed_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] - }, - "dismissed_at": { - "type": [ - "string", - "null" - ], - "description": "The time that the alert was dismissed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", - "format": "date-time", - "readOnly": true - }, - "dismissed_reason": { - "type": [ - "string", - "null" - ], - "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", - "enum": [ - "false positive", - "won't fix", - "used in tests", - null - ] - }, - "dismissed_comment": { - "type": [ - "string", - "null" - ], - "description": "The dismissal comment associated with the dismissal of the alert.", - "maxLength": 280 - }, - "rule": { - "type": "object", - "properties": { - "id": { - "type": [ - "string", - "null" - ], - "description": "A unique identifier for the rule used to detect the alert." - }, - "name": { - "type": "string", - "description": "The name of the rule used to detect the alert." - }, - "severity": { - "type": [ - "string", - "null" - ], - "description": "The severity of the alert.", - "enum": [ - "none", - "note", - "warning", - "error", - null - ] - }, - "security_severity_level": { - "type": [ - "string", - "null" - ], - "description": "The security severity of the alert.", - "enum": [ - "low", - "medium", - "high", - "critical", - null - ] - }, - "description": { - "type": "string", - "description": "A short description of the rule used to detect the alert." - }, - "full_description": { - "type": "string", - "description": "A description of the rule used to detect the alert." - }, - "tags": { - "type": [ - "array", - "null" - ], - "description": "A set of tags applicable for the rule.", - "items": { - "type": "string" - } - }, - "help": { - "type": [ - "string", - "null" - ], - "description": "Detailed documentation for the rule as GitHub Flavored Markdown." - }, - "help_uri": { - "type": [ - "string", - "null" - ], - "description": "A link to the documentation for the rule used to detect the alert." - } - } - }, - "tool": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the tool used to generate the code scanning analysis." - }, - "version": { - "type": [ - "string", - "null" - ], - "description": "The version of the tool used to generate the code scanning analysis." - }, - "guid": { - "type": [ - "string", - "null" - ], - "description": "The GUID of the tool used to generate the code scanning analysis, if provided in the uploaded SARIF data." - } - } - }, - "most_recent_instance": { - "type": "object", - "properties": { - "ref": { - "type": "string", - "description": "The Git reference, formatted as `refs/pull//merge`, `refs/pull//head`,\n`refs/heads/` or simply ``." - }, - "analysis_key": { - "type": "string", - "description": "Identifies the configuration under which the analysis was executed. For example, in GitHub Actions this includes the workflow filename and job name." - }, - "environment": { - "type": "string", - "description": "Identifies the variable values associated with the environment in which the analysis that generated this alert instance was performed, such as the language that was analyzed." - }, - "category": { - "type": "string", - "description": "Identifies the configuration under which the analysis was executed. Used to distinguish between multiple analyses for the same tool and commit, but performed on different languages or different parts of the code." - }, - "state": { - "type": [ - "string", - "null" - ], - "description": "State of a code scanning alert.", - "enum": [ - "open", - "dismissed", - "fixed", - null - ] - }, - "commit_sha": { - "type": "string" - }, - "message": { - "type": "object", - "properties": { - "text": { - "type": "string" - }, - "markdown": { - "type": "string", - "description": "The message text as GitHub-flavored Markdown, with placeholder links for related locations replaced by links to the relevant code. Only populated when related locations are available for the alert instance." - } - } - }, - "location": { - "type": "object", - "description": "Describe a region within a file for the alert.", - "properties": { - "path": { - "type": "string" - }, - "start_line": { - "type": "integer" - }, - "end_line": { - "type": "integer" - }, - "start_column": { - "type": "integer" - }, - "end_column": { - "type": "integer" - } - } - }, - "html_url": { - "type": "string" - }, - "classifications": { - "type": "array", - "description": "Classifications that have been applied to the file that triggered the alert.\nFor example identifying it as documentation, or a generated file.", - "items": { - "type": [ - "string", - "null" - ], - "description": "A classification of the file. For example to identify it as generated.", - "enum": [ - "source", - "generated", - "test", - "library", - null - ] - } - } - } - }, - "dismissal_approved_by": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] - }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } - }, - "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" - ] - } - ] }, - "assignees": { + "linked_pull_requests": { + "description": "Pull requests linked to this alert.", "type": "array", "items": { - "title": "Simple User", - "description": "A GitHub user.", + "title": "Pull Request Simple", + "description": "Pull Request Simple", "type": "object", "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { + "url": { "type": "string", + "format": "uri", "examples": [ - "octocat" + "https://api.github.com/repos/octocat/Hello-World/pulls/1347" ] }, "id": { @@ -369816,139 +368876,10163 @@ "node_id": { "type": "string", "examples": [ - "MDQ6VXNlcjE=" + "MDExOlB1bGxSZXF1ZXN0MQ==" ] }, - "avatar_url": { + "html_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" + "https://github.com/octocat/Hello-World/pull/1347" ] }, - "url": { + "diff_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat" + "https://github.com/octocat/Hello-World/pull/1347.diff" ] }, - "html_url": { + "patch_url": { "type": "string", "format": "uri", "examples": [ - "https://github.com/octocat" + "https://github.com/octocat/Hello-World/pull/1347.patch" ] }, - "followers_url": { + "issue_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/followers" + "https://api.github.com/repos/octocat/Hello-World/issues/1347" ] }, - "following_url": { + "commits_url": { "type": "string", + "format": "uri", "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" ] }, - "gists_url": { + "review_comments_url": { "type": "string", + "format": "uri", "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" ] }, - "starred_url": { + "review_comment_url": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" + "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" ] }, - "subscriptions_url": { + "comments_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/subscriptions" + "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" ] }, - "organizations_url": { + "statuses_url": { "type": "string", "format": "uri", "examples": [ - "https://api.github.com/users/octocat/orgs" + "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" ] }, - "repos_url": { - "type": "string", - "format": "uri", + "number": { + "type": "integer", "examples": [ - "https://api.github.com/users/octocat/repos" + 1347 ] }, - "events_url": { + "state": { "type": "string", "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" + "open" ] }, - "received_events_url": { - "type": "string", - "format": "uri", + "locked": { + "type": "boolean", "examples": [ - "https://api.github.com/users/octocat/received_events" + true ] }, - "type": { + "title": { "type": "string", "examples": [ - "User" + "new-feature" ] }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "type": [ + "string", + "null" + ], "examples": [ - "\"2020-07-09T00:17:55Z\"" + "Please pull these awesome changes" + ] + }, + "labels": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "color": { + "type": "string" + }, + "default": { + "type": "boolean" + } + }, + "required": [ + "id", + "node_id", + "url", + "name", + "description", + "color", + "default" + ] + } + }, + "milestone": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Milestone", + "description": "A collection of related issues and pull requests.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/milestones/v1.0" + ] + }, + "labels_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1002604 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDk6TWlsZXN0b25lMTAwMjYwNA==" + ] + }, + "number": { + "description": "The number of the milestone.", + "type": "integer", + "examples": [ + 42 + ] + }, + "state": { + "description": "The state of the milestone.", + "type": "string", + "enum": [ + "open", + "closed" + ], + "default": "open", + "examples": [ + "open" + ] + }, + "title": { + "description": "The title of the milestone.", + "type": "string", + "examples": [ + "v1.0" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "Tracking milestone for version 1.0" + ] + }, + "creator": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "open_issues": { + "type": "integer", + "examples": [ + 4 + ] + }, + "closed_issues": { + "type": "integer", + "examples": [ + 8 + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-10T20:09:31Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2014-03-03T18:58:10Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2013-02-12T13:22:01Z" + ] + }, + "due_on": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2012-10-09T23:39:01Z" + ] + } + }, + "required": [ + "closed_issues", + "creator", + "description", + "due_on", + "closed_at", + "id", + "node_id", + "labels_url", + "html_url", + "number", + "open_issues", + "state", + "title", + "url", + "created_at", + "updated_at" + ] + } + ] + }, + "active_lock_reason": { + "type": [ + "string", + "null" + ], + "examples": [ + "too heated" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merge_commit_sha": { + "type": [ + "string", + "null" + ], + "examples": [ + "e5bd3914e2e596debea16f433f57875b5b90bcd6" + ] + }, + "assignee": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_reviewers": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" + ], + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } + }, + "head": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ], + "x-github-breaking-changes": [ + { + "changeset": "remove_use_squash_pr_title_as_default", + "patch": { + "properties": { + "use_squash_pr_title_as_default": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "deprecate_beta_media_type", + "patch": { + "properties": { + "master_branch": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "remove_has_downloads", + "patch": { + "properties": { + "has_downloads": null + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "version": "2026-03-10" + } + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "base": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ], + "x-github-breaking-changes": [ + { + "changeset": "remove_use_squash_pr_title_as_default", + "patch": { + "properties": { + "use_squash_pr_title_as_default": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "deprecate_beta_media_type", + "patch": { + "properties": { + "master_branch": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "remove_has_downloads", + "patch": { + "properties": { + "has_downloads": null + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "version": "2026-03-10" + } + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "_links": { + "type": "object", + "properties": { + "comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "commits": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "statuses": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "issue": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comment": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "comments", + "commits", + "statuses", + "html", + "issue", + "review_comments", + "review_comment", + "self" + ] + }, + "author_association": { + "title": "author_association", + "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], + "examples": [ + "OWNER" + ] + }, + "auto_merge": { + "title": "Auto merge", + "description": "The status of auto merging a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "enabled_by": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "merge_method": { + "type": "string", + "description": "The merge method to use.", + "enum": [ + "merge", + "squash", + "rebase" + ] + }, + "commit_title": { + "type": "string", + "description": "Title for the merge commit message." + }, + "commit_message": { + "type": "string", + "description": "Commit message for the merge commit." + } + }, + "required": [ + "enabled_by", + "merge_method", + "commit_title", + "commit_message" + ] + }, + "stack": { + "title": "Pull Request Stack", + "description": "The stack information associated with a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The base ref of the stack this pull request belongs to." + }, + "sha": { + "type": "string", + "description": "The base SHA of the stack this pull request belongs to." + } + }, + "required": [ + "ref", + "sha" + ] + }, + "size": { + "type": "integer", + "description": "The total number of pull requests in the stack." + }, + "position": { + "type": "integer", + "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + }, + "id": { + "type": "integer", + "description": "The ID of the stack that this pull request belongs to." + }, + "number": { + "type": "integer", + "description": "The number of the stack that this pull request belongs to." + } + }, + "required": [ + "base" + ] + }, + "draft": { + "description": "Indicates whether or not the pull request is a draft.", + "type": "boolean", + "examples": [ + false + ] + } + }, + "required": [ + "_links", + "assignee", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merge_commit_sha", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ], + "x-github-breaking-changes": [ + { + "changeset": "remove_pull_request_merge_commit_sha", + "patch": { + "properties": { + "merge_commit_sha": null + }, + "required": [ + "_links", + "assignee", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ] + }, + "version": "2026-03-10" + }, + { + "changeset": "remove_singular_assignee_from_issues_and_pull_requests", + "patch": { + "properties": { + "assignee": null + }, + "required": [ + "_links", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ] + }, + "version": "2026-03-10" + } + ] + } + } + }, + "required": [ + "number", + "created_at", + "url", + "html_url", + "instances_url", + "state", + "dismissed_by", + "dismissed_at", + "dismissed_reason", + "rule", + "tool", + "most_recent_instance" + ] + }, + "examples": { + "default": { + "value": { + "number": 42, + "created_at": "2020-06-19T11:21:34Z", + "url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42", + "html_url": "https://github.com/octocat/hello-world/code-scanning/42", + "state": "dismissed", + "fixed_at": null, + "dismissed_by": { + "login": "octocat", + "id": 54933897, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "dismissed_at": "2020-02-14T12:29:18Z", + "dismissed_reason": "false positive", + "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", + "rule": { + "id": "js/zipslip", + "severity": "error", + "security_severity_level": "high", + "description": "Arbitrary file write during zip extraction (\"Zip Slip\")", + "name": "js/zipslip", + "full_description": "Extracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten.", + "tags": [ + "security", + "external/cwe/cwe-022" + ], + "help": "# Arbitrary file write during zip extraction (\"Zip Slip\")\\nExtracting files from a malicious zip archive without validating that the destination file path is within the destination directory can cause files outside the destination directory to be overwritten ...", + "help_uri": "https://codeql.github.com/" + }, + "tool": { + "name": "CodeQL", + "guid": null, + "version": "2.4.0" + }, + "most_recent_instance": { + "ref": "refs/heads/main", + "analysis_key": ".github/workflows/codeql-analysis.yml:CodeQL-Build", + "category": ".github/workflows/codeql-analysis.yml:CodeQL-Build", + "environment": "{}", + "state": "dismissed", + "commit_sha": "39406e42cb832f683daa691dd652a8dc36ee8930", + "message": { + "text": "This path depends on a user-provided value." + }, + "location": { + "path": "spec-main/api-session-spec.ts", + "start_line": 917, + "end_line": 917, + "start_column": 7, + "end_column": 18 + }, + "classifications": [ + "test" + ] + }, + "instances_url": "https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances" + } + } + } + } + } + }, + "304": { + "description": "Not modified" + }, + "403": { + "description": "Response if GitHub Advanced Security is not enabled for this repository", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "503": { + "description": "Service unavailable", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "code-scanning", + "subcategory": "code-scanning" + } + }, + "patch": { + "summary": "Update a code scanning alert", + "description": "Updates the status of a single code scanning alert.\nOAuth app tokens and personal access tokens (classic) need the `security_events` scope to use this endpoint with private or public repositories, or the `public_repo` scope to use this endpoint with only public repositories.", + "operationId": "code-scanning/update-alert", + "tags": [ + "code-scanning" + ], + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/code-scanning/code-scanning#update-a-code-scanning-alert" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "alert_number", + "in": "path", + "description": "The number that identifies an alert. You can find this at the end of the URL for a code scanning alert within GitHub, and in the `number` field in the response from the `GET /repos/{owner}/{repo}/code-scanning/alerts` operation.", + "required": true, + "schema": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "state": { + "description": "Sets the state of the code scanning alert. You must provide `dismissed_reason` when you set the state to `dismissed`.", + "type": "string", + "enum": [ + "open", + "dismissed" + ] + }, + "dismissed_reason": { + "type": [ + "string", + "null" + ], + "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", + "enum": [ + "false positive", + "won't fix", + "used in tests", + null + ] + }, + "dismissed_comment": { + "type": [ + "string", + "null" + ], + "description": "The dismissal comment associated with the dismissal of the alert.", + "maxLength": 280 + }, + "create_request": { + "type": "boolean", + "description": "If `true`, attempt to create an alert dismissal request." + }, + "assignees": { + "description": "The list of users to assign to the code scanning alert. An empty array unassigns all previous assignees from the alert.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "anyOf": [ + { + "required": [ + "state" + ] + }, + { + "required": [ + "assignees" + ] + } + ] + }, + "examples": { + "default": { + "value": { + "state": "dismissed", + "dismissed_reason": "false positive", + "dismissed_comment": "This alert is not actually correct, because there's a sanitizer included in the library.", + "create_request": true + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "number": { + "type": "integer", + "description": "The security alert number.", + "readOnly": true + }, + "created_at": { + "type": "string", + "description": "The time that the alert was created in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "updated_at": { + "type": "string", + "description": "The time that the alert was last updated in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "url": { + "type": "string", + "description": "The REST API URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "html_url": { + "type": "string", + "description": "The GitHub URL of the alert resource.", + "format": "uri", + "readOnly": true + }, + "instances_url": { + "type": "string", + "description": "The REST API URL for fetching the list of instances for an alert.", + "format": "uri", + "readOnly": true + }, + "state": { + "type": [ + "string", + "null" + ], + "description": "State of a code scanning alert.", + "enum": [ + "open", + "dismissed", + "fixed", + null + ] + }, + "fixed_at": { + "type": [ + "string", + "null" + ], + "description": "The time that the alert was no longer detected and was considered fixed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "dismissed_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "dismissed_at": { + "type": [ + "string", + "null" + ], + "description": "The time that the alert was dismissed in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.", + "format": "date-time", + "readOnly": true + }, + "dismissed_reason": { + "type": [ + "string", + "null" + ], + "description": "**Required when the state is dismissed.** The reason for dismissing or closing the alert.", + "enum": [ + "false positive", + "won't fix", + "used in tests", + null + ] + }, + "dismissed_comment": { + "type": [ + "string", + "null" + ], + "description": "The dismissal comment associated with the dismissal of the alert.", + "maxLength": 280 + }, + "rule": { + "type": "object", + "properties": { + "id": { + "type": [ + "string", + "null" + ], + "description": "A unique identifier for the rule used to detect the alert." + }, + "name": { + "type": "string", + "description": "The name of the rule used to detect the alert." + }, + "severity": { + "type": [ + "string", + "null" + ], + "description": "The severity of the alert.", + "enum": [ + "none", + "note", + "warning", + "error", + null + ] + }, + "security_severity_level": { + "type": [ + "string", + "null" + ], + "description": "The security severity of the alert.", + "enum": [ + "low", + "medium", + "high", + "critical", + null + ] + }, + "description": { + "type": "string", + "description": "A short description of the rule used to detect the alert." + }, + "full_description": { + "type": "string", + "description": "A description of the rule used to detect the alert." + }, + "tags": { + "type": [ + "array", + "null" + ], + "description": "A set of tags applicable for the rule.", + "items": { + "type": "string" + } + }, + "help": { + "type": [ + "string", + "null" + ], + "description": "Detailed documentation for the rule as GitHub Flavored Markdown." + }, + "help_uri": { + "type": [ + "string", + "null" + ], + "description": "A link to the documentation for the rule used to detect the alert." + } + } + }, + "tool": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the tool used to generate the code scanning analysis." + }, + "version": { + "type": [ + "string", + "null" + ], + "description": "The version of the tool used to generate the code scanning analysis." + }, + "guid": { + "type": [ + "string", + "null" + ], + "description": "The GUID of the tool used to generate the code scanning analysis, if provided in the uploaded SARIF data." + } + } + }, + "most_recent_instance": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The Git reference, formatted as `refs/pull//merge`, `refs/pull//head`,\n`refs/heads/` or simply ``." + }, + "analysis_key": { + "type": "string", + "description": "Identifies the configuration under which the analysis was executed. For example, in GitHub Actions this includes the workflow filename and job name." + }, + "environment": { + "type": "string", + "description": "Identifies the variable values associated with the environment in which the analysis that generated this alert instance was performed, such as the language that was analyzed." + }, + "category": { + "type": "string", + "description": "Identifies the configuration under which the analysis was executed. Used to distinguish between multiple analyses for the same tool and commit, but performed on different languages or different parts of the code." + }, + "state": { + "type": [ + "string", + "null" + ], + "description": "State of a code scanning alert.", + "enum": [ + "open", + "dismissed", + "fixed", + null + ] + }, + "commit_sha": { + "type": "string" + }, + "message": { + "type": "object", + "properties": { + "text": { + "type": "string" + }, + "markdown": { + "type": "string", + "description": "The message text as GitHub-flavored Markdown, with placeholder links for related locations replaced by links to the relevant code. Only populated when related locations are available for the alert instance." + } + } + }, + "location": { + "type": "object", + "description": "Describe a region within a file for the alert.", + "properties": { + "path": { + "type": "string" + }, + "start_line": { + "type": "integer" + }, + "end_line": { + "type": "integer" + }, + "start_column": { + "type": "integer" + }, + "end_column": { + "type": "integer" + } + } + }, + "html_url": { + "type": "string" + }, + "classifications": { + "type": "array", + "description": "Classifications that have been applied to the file that triggered the alert.\nFor example identifying it as documentation, or a generated file.", + "items": { + "type": [ + "string", + "null" + ], + "description": "A classification of the file. For example to identify it as generated.", + "enum": [ + "source", + "generated", + "test", + "library", + null + ] + } + } + } + }, + "dismissal_approved_by": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "linked_pull_requests": { + "description": "Pull requests linked to this alert.", + "type": "array", + "items": { + "title": "Pull Request Simple", + "description": "Pull Request Simple", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDExOlB1bGxSZXF1ZXN0MQ==" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347" + ] + }, + "diff_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347.diff" + ] + }, + "patch_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/pull/1347.patch" + ] + }, + "issue_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347" + ] + }, + "commits_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/commits" + ] + }, + "review_comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/1347/comments" + ] + }, + "review_comment_url": { + "type": "string", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/pulls/comments{/number}" + ] + }, + "comments_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/issues/1347/comments" + ] + }, + "statuses_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/statuses/6dcb09b5b57875f334f61aebed695e2e4193db5e" + ] + }, + "number": { + "type": "integer", + "examples": [ + 1347 + ] + }, + "state": { + "type": "string", + "examples": [ + "open" + ] + }, + "locked": { + "type": "boolean", + "examples": [ + true + ] + }, + "title": { + "type": "string", + "examples": [ + "new-feature" + ] + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "body": { + "type": [ + "string", + "null" + ], + "examples": [ + "Please pull these awesome changes" + ] + }, + "labels": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "color": { + "type": "string" + }, + "default": { + "type": "boolean" + } + }, + "required": [ + "id", + "node_id", + "url", + "name", + "description", + "color", + "default" + ] + } + }, + "milestone": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Milestone", + "description": "A collection of related issues and pull requests.", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World/milestones/v1.0" + ] + }, + "labels_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World/milestones/1/labels" + ] + }, + "id": { + "type": "integer", + "examples": [ + 1002604 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDk6TWlsZXN0b25lMTAwMjYwNA==" + ] + }, + "number": { + "description": "The number of the milestone.", + "type": "integer", + "examples": [ + 42 + ] + }, + "state": { + "description": "The state of the milestone.", + "type": "string", + "enum": [ + "open", + "closed" + ], + "default": "open", + "examples": [ + "open" + ] + }, + "title": { + "description": "The title of the milestone.", + "type": "string", + "examples": [ + "v1.0" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "Tracking milestone for version 1.0" + ] + }, + "creator": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "open_issues": { + "type": "integer", + "examples": [ + 4 + ] + }, + "closed_issues": { + "type": "integer", + "examples": [ + 8 + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-04-10T20:09:31Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2014-03-03T18:58:10Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2013-02-12T13:22:01Z" + ] + }, + "due_on": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2012-10-09T23:39:01Z" + ] + } + }, + "required": [ + "closed_issues", + "creator", + "description", + "due_on", + "closed_at", + "id", + "node_id", + "labels_url", + "html_url", + "number", + "open_issues", + "state", + "title", + "url", + "created_at", + "updated_at" + ] + } + ] + }, + "active_lock_reason": { + "type": [ + "string", + "null" + ], + "examples": [ + "too heated" + ] + }, + "created_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": "string", + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "closed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "merge_commit_sha": { + "type": [ + "string", + "null" + ], + "examples": [ + "e5bd3914e2e596debea16f433f57875b5b90bcd6" + ] + }, + "assignee": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "assignees": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_reviewers": { + "type": "array", + "items": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + }, + "requested_teams": { + "type": "array", + "items": { + "title": "Team", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "slug": { + "type": "string" + }, + "description": { + "type": [ + "string", + "null" + ] + }, + "privacy": { + "type": "string" + }, + "notification_setting": { + "type": "string" + }, + "permission": { + "type": "string" + }, + "permissions": { + "type": "object", + "properties": { + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + }, + "admin": { + "type": "boolean" + } + }, + "required": [ + "pull", + "triage", + "push", + "maintain", + "admin" + ] + }, + "url": { + "type": "string", + "format": "uri" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "members_url": { + "type": "string" + }, + "repositories_url": { + "type": "string", + "format": "uri" + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "access_source": { + "description": "How the team's access to the repository was granted. This property is only\npresent when the team is returned in a repository context, such as\n`GET /repos/{owner}/{repo}/teams`.", + "type": "string", + "enum": [ + "direct", + "organization", + "enterprise" + ], + "examples": [ + "direct" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + }, + "parent": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Team Simple", + "description": "Groups of organization members that gives permissions on specified repositories.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the team", + "type": "integer", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VGVhbTE=" + ] + }, + "url": { + "description": "URL for the team", + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1" + ] + }, + "members_url": { + "type": "string", + "examples": [ + "https://api.github.com/organizations/1/team/1/members{/member}" + ] + }, + "name": { + "description": "Name of the team", + "type": "string", + "examples": [ + "Justice League" + ] + }, + "description": { + "description": "Description of the team", + "type": [ + "string", + "null" + ], + "examples": [ + "A great team." + ] + }, + "permission": { + "description": "Permission that the team will have for its repositories", + "type": "string", + "examples": [ + "admin" + ] + }, + "privacy": { + "description": "The level of privacy this team should have", + "type": "string", + "examples": [ + "closed" + ] + }, + "notification_setting": { + "description": "The notification setting the team has set", + "type": "string", + "examples": [ + "notifications_enabled" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/orgs/rails/teams/core" + ] + }, + "repositories_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/organizations/1/team/1/repos" + ] + }, + "slug": { + "type": "string", + "examples": [ + "justice-league" + ] + }, + "ldap_dn": { + "description": "Distinguished Name (DN) that team maps to within LDAP environment", + "type": "string", + "examples": [ + "uid=example,ou=users,dc=github,dc=com" + ] + }, + "type": { + "description": "The ownership type of the team", + "type": "string", + "enum": [ + "enterprise", + "organization" + ] + }, + "organization_id": { + "type": "integer", + "description": "Unique identifier of the organization to which this team belongs", + "examples": [ + 37 + ] + }, + "enterprise_id": { + "type": "integer", + "description": "Unique identifier of the enterprise to which this team belongs", + "examples": [ + 42 + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "type" + ] + } + ] + } + }, + "required": [ + "id", + "node_id", + "url", + "members_url", + "name", + "description", + "permission", + "html_url", + "repositories_url", + "slug", + "parent", + "type" + ] + } + }, + "head": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ], + "x-github-breaking-changes": [ + { + "changeset": "remove_use_squash_pr_title_as_default", + "patch": { + "properties": { + "use_squash_pr_title_as_default": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "deprecate_beta_media_type", + "patch": { + "properties": { + "master_branch": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "remove_has_downloads", + "patch": { + "properties": { + "has_downloads": null + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "version": "2026-03-10" + } + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" + ] + }, + "base": { + "type": "object", + "properties": { + "label": { + "type": "string" + }, + "ref": { + "type": "string" + }, + "repo": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" + ], + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ], + "x-github-breaking-changes": [ + { + "changeset": "remove_use_squash_pr_title_as_default", + "patch": { + "properties": { + "use_squash_pr_title_as_default": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "deprecate_beta_media_type", + "patch": { + "properties": { + "master_branch": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "remove_has_downloads", + "patch": { + "properties": { + "has_downloads": null + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "version": "2026-03-10" + } + ] + }, + "sha": { + "type": "string" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + }, + "required": [ + "label", + "ref", + "repo", + "sha", + "user" ] }, - "user_view_type": { + "_links": { + "type": "object", + "properties": { + "comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "commits": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "statuses": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "html": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "issue": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comments": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "review_comment": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + }, + "self": { + "title": "Link", + "description": "Hypermedia Link", + "type": "object", + "properties": { + "href": { + "type": "string" + } + }, + "required": [ + "href" + ] + } + }, + "required": [ + "comments", + "commits", + "statuses", + "html", + "issue", + "review_comments", + "review_comment", + "self" + ] + }, + "author_association": { + "title": "author_association", "type": "string", + "description": "How the author is associated with the repository.", + "enum": [ + "COLLABORATOR", + "CONTRIBUTOR", + "FIRST_TIMER", + "FIRST_TIME_CONTRIBUTOR", + "MANNEQUIN", + "MEMBER", + "NONE", + "OWNER" + ], "examples": [ - "public" + "OWNER" + ] + }, + "auto_merge": { + "title": "Auto merge", + "description": "The status of auto merging a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "enabled_by": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + }, + "merge_method": { + "type": "string", + "description": "The merge method to use.", + "enum": [ + "merge", + "squash", + "rebase" + ] + }, + "commit_title": { + "type": "string", + "description": "Title for the merge commit message." + }, + "commit_message": { + "type": "string", + "description": "Commit message for the merge commit." + } + }, + "required": [ + "enabled_by", + "merge_method", + "commit_title", + "commit_message" + ] + }, + "stack": { + "title": "Pull Request Stack", + "description": "The stack information associated with a pull request.", + "type": [ + "object", + "null" + ], + "properties": { + "base": { + "type": "object", + "properties": { + "ref": { + "type": "string", + "description": "The base ref of the stack this pull request belongs to." + }, + "sha": { + "type": "string", + "description": "The base SHA of the stack this pull request belongs to." + } + }, + "required": [ + "ref", + "sha" + ] + }, + "size": { + "type": "integer", + "description": "The total number of pull requests in the stack." + }, + "position": { + "type": "integer", + "description": "The one-based position of this pull request within the stack, where 1 is the bottom of the stack." + }, + "id": { + "type": "integer", + "description": "The ID of the stack that this pull request belongs to." + }, + "number": { + "type": "integer", + "description": "The number of the stack that this pull request belongs to." + } + }, + "required": [ + "base" + ] + }, + "draft": { + "description": "Indicates whether or not the pull request is a draft.", + "type": "boolean", + "examples": [ + false ] } }, "required": [ - "avatar_url", - "events_url", - "followers_url", - "following_url", - "gists_url", - "gravatar_id", + "_links", + "assignee", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", "html_url", "id", "node_id", - "login", - "organizations_url", - "received_events_url", - "repos_url", - "site_admin", - "starred_url", - "subscriptions_url", - "type", - "url" + "issue_url", + "merge_commit_sha", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ], + "x-github-breaking-changes": [ + { + "changeset": "remove_pull_request_merge_commit_sha", + "patch": { + "properties": { + "merge_commit_sha": null + }, + "required": [ + "_links", + "assignee", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ] + }, + "version": "2026-03-10" + }, + { + "changeset": "remove_singular_assignee_from_issues_and_pull_requests", + "patch": { + "properties": { + "assignee": null + }, + "required": [ + "_links", + "labels", + "base", + "body", + "closed_at", + "comments_url", + "commits_url", + "created_at", + "diff_url", + "head", + "html_url", + "id", + "node_id", + "issue_url", + "merged_at", + "milestone", + "number", + "patch_url", + "review_comment_url", + "review_comments_url", + "statuses_url", + "state", + "locked", + "title", + "updated_at", + "url", + "user", + "author_association", + "auto_merge" + ] + }, + "version": "2026-03-10" + } ] } } @@ -719743,581 +728827,1652 @@ "default": true, "type": "boolean", "examples": [ - true + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ], + "x-github-breaking-changes": [ + { + "changeset": "remove_use_squash_pr_title_as_default", + "patch": { + "properties": { + "use_squash_pr_title_as_default": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "deprecate_beta_media_type", + "patch": { + "properties": { + "master_branch": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "remove_has_downloads", + "patch": { + "properties": { + "has_downloads": null + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "version": "2026-03-10" + } + ] + } + ] + }, + "temp_clone_token": { + "type": [ + "string", + "null" + ] + }, + "allow_squash_merge": { + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "type": "boolean", + "examples": [ + false + ] + }, + "allow_merge_commit": { + "type": "boolean", + "examples": [ + true + ] + }, + "allow_update_branch": { + "type": "boolean", + "examples": [ + true + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "examples": [ + false + ] + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit).", + "examples": [ + "PR_TITLE" + ] + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message.", + "examples": [ + "PR_BODY" + ] + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n - `PR_TITLE` - default to the pull request's title.\n - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).", + "examples": [ + "PR_TITLE" + ] + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message.", + "examples": [ + "PR_BODY" + ] + }, + "allow_forking": { + "type": "boolean", + "examples": [ + true + ] + }, + "web_commit_signoff_required": { + "type": "boolean", + "examples": [ + false + ] + }, + "subscribers_count": { + "type": "integer", + "examples": [ + 42 + ] + }, + "network_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "organization": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + }, + "parent": { + "title": "Repository", + "description": "A repository on GitHub.", + "type": "object", + "properties": { + "id": { + "description": "Unique identifier of the repository", + "type": "integer", + "format": "int64", + "examples": [ + 42 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" + ] + }, + "name": { + "description": "The name of the repository.", + "type": "string", + "examples": [ + "Team Environment" + ] + }, + "full_name": { + "type": "string", + "examples": [ + "octocat/Hello-World" + ] + }, + "license": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "License Simple", + "description": "License Simple", + "type": "object", + "properties": { + "key": { + "type": "string", + "examples": [ + "mit" + ] + }, + "name": { + "type": "string", + "examples": [ + "MIT License" + ] + }, + "url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://api.github.com/licenses/mit" + ] + }, + "spdx_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "MIT" + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDc6TGljZW5zZW1pdA==" + ] + }, + "html_url": { + "type": "string", + "format": "uri" + } + }, + "required": [ + "key", + "name", + "url", + "spdx_id", + "node_id" + ] + } + ] + }, + "forks": { + "type": "integer" + }, + "permissions": { + "type": "object", + "properties": { + "admin": { + "type": "boolean" + }, + "pull": { + "type": "boolean" + }, + "triage": { + "type": "boolean" + }, + "push": { + "type": "boolean" + }, + "maintain": { + "type": "boolean" + } + }, + "required": [ + "admin", + "pull", + "push" + ] + }, + "owner": { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" ] }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] }, - "open_issues": { - "type": "integer" + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] }, - "watchers": { - "type": "integer" + "type": { + "type": "string", + "examples": [ + "User" + ] }, - "master_branch": { - "type": "string" + "site_admin": { + "type": "boolean" }, "starred_at": { "type": "string", "examples": [ - "\"2020-07-09T00:17:42Z\"" + "\"2020-07-09T00:17:55Z\"" ] }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { - "type": "string" - } - } + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] } }, "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", + "avatar_url", "events_url", - "fork", - "forks_url", - "full_name", - "git_commits_url", - "git_refs_url", - "git_tags_url", - "hooks_url", + "followers_url", + "following_url", + "gists_url", + "gravatar_id", "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" + "login", + "organizations_url", + "received_events_url", + "repos_url", + "site_admin", + "starred_url", + "subscriptions_url", + "type", + "url" + ] + }, + "private": { + "description": "Whether the repository is private or public.", + "default": false, + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat/Hello-World" + ] + }, + "description": { + "type": [ + "string", + "null" ], - "x-github-breaking-changes": [ - { - "changeset": "remove_use_squash_pr_title_as_default", - "patch": { - "properties": { - "use_squash_pr_title_as_default": null - } - }, - "version": "2026-03-10" - }, - { - "changeset": "deprecate_beta_media_type", - "patch": { - "properties": { - "master_branch": null - } - }, - "version": "2026-03-10" + "examples": [ + "This your first repo!" + ] + }, + "fork": { + "type": "boolean" + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/octocat/Hello-World" + ] + }, + "archive_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" + ] + }, + "assignees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" + ] + }, + "blobs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" + ] + }, + "branches_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" + ] + }, + "collaborators_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" + ] + }, + "comments_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/comments{/number}" + ] + }, + "commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" + ] + }, + "compare_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" + ] + }, + "contents_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" + ] + }, + "contributors_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/contributors" + ] + }, + "deployments_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/deployments" + ] + }, + "downloads_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/downloads" + ] + }, + "events_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/events" + ] + }, + "forks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/forks" + ] + }, + "git_commits_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" + ] + }, + "git_refs_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" + ] + }, + "git_tags_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" + ] + }, + "git_url": { + "type": "string", + "examples": [ + "git:github.com/octocat/Hello-World.git" + ] + }, + "issue_comment_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" + ] + }, + "issue_events_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" + ] + }, + "issues_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/issues{/number}" + ] + }, + "keys_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" + ] + }, + "labels_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/labels{/name}" + ] + }, + "languages_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/languages" + ] + }, + "merges_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/merges" + ] + }, + "milestones_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" + ] + }, + "notifications_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" + ] + }, + "pulls_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" + ] + }, + "releases_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/releases{/id}" + ] + }, + "ssh_url": { + "type": "string", + "examples": [ + "git@github.com:octocat/Hello-World.git" + ] + }, + "stargazers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/stargazers" + ] + }, + "statuses_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" + ] + }, + "subscribers_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscribers" + ] + }, + "subscription_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/subscription" + ] + }, + "tags_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/tags" + ] + }, + "teams_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/teams" + ] + }, + "trees_url": { + "type": "string", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" + ] + }, + "clone_url": { + "type": "string", + "examples": [ + "https://github.com/octocat/Hello-World.git" + ] + }, + "mirror_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "git:git.example.com/octocat/Hello-World" + ] + }, + "hooks_url": { + "type": "string", + "format": "uri", + "examples": [ + "http://api.github.com/repos/octocat/Hello-World/hooks" + ] + }, + "svn_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://svn.github.com/octocat/Hello-World" + ] + }, + "homepage": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com" + ] + }, + "language": { + "type": [ + "string", + "null" + ] + }, + "forks_count": { + "type": "integer", + "examples": [ + 9 + ] + }, + "stargazers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "watchers_count": { + "type": "integer", + "examples": [ + 80 + ] + }, + "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", + "examples": [ + 108 + ] + }, + "default_branch": { + "description": "The default branch of the repository.", + "type": "string", + "examples": [ + "master" + ] + }, + "open_issues_count": { + "type": "integer", + "examples": [ + 0 + ] + }, + "is_template": { + "description": "Whether this repository acts as a template that can be used to generate new repositories.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "topics": { + "type": "array", + "items": { + "type": "string" + } + }, + "has_issues": { + "description": "Whether issues are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_projects": { + "description": "Whether projects are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_wiki": { + "description": "Whether the wiki is enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pages": { + "type": "boolean" + }, + "has_downloads": { + "description": "Whether downloads are enabled.", + "default": true, + "type": "boolean", + "deprecated": true, + "examples": [ + true + ] + }, + "has_discussions": { + "description": "Whether discussions are enabled.", + "default": false, + "type": "boolean", + "examples": [ + true + ] + }, + "has_pull_requests": { + "description": "Whether pull requests are enabled.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "pull_request_creation_policy": { + "description": "The policy controlling who can create pull requests: all or collaborators_only.", + "type": "string", + "enum": [ + "all", + "collaborators_only" + ], + "examples": [ + "all" + ] + }, + "archived": { + "description": "Whether the repository is archived.", + "default": false, + "type": "boolean" + }, + "disabled": { + "type": "boolean", + "description": "Returns whether or not this repository disabled." + }, + "visibility": { + "description": "The repository visibility: public, private, or internal.", + "default": "public", + "type": "string" + }, + "pushed_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:06:43Z" + ] + }, + "created_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:01:12Z" + ] + }, + "updated_at": { + "type": [ + "string", + "null" + ], + "format": "date-time", + "examples": [ + "2011-01-26T19:14:43Z" + ] + }, + "allow_rebase_merge": { + "description": "Whether to allow rebase merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "temp_clone_token": { + "type": "string" + }, + "allow_squash_merge": { + "description": "Whether to allow squash merges for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_auto_merge": { + "description": "Whether to allow Auto-merge to be used on pull requests.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "delete_branch_on_merge": { + "description": "Whether to delete head branches when pull requests are merged", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "allow_update_branch": { + "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", + "default": false, + "type": "boolean", + "examples": [ + false + ] + }, + "use_squash_pr_title_as_default": { + "type": "boolean", + "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", + "default": false, + "deprecated": true + }, + "squash_merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "COMMIT_OR_PR_TITLE" + ], + "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." + }, + "squash_merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "COMMIT_MESSAGES", + "BLANK" + ], + "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." + }, + "merge_commit_title": { + "type": "string", + "enum": [ + "PR_TITLE", + "MERGE_MESSAGE" + ], + "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." + }, + "merge_commit_message": { + "type": "string", + "enum": [ + "PR_BODY", + "PR_TITLE", + "BLANK" + ], + "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." + }, + "allow_merge_commit": { + "description": "Whether to allow merge commits for pull requests.", + "default": true, + "type": "boolean", + "examples": [ + true + ] + }, + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" }, - { - "changeset": "remove_has_downloads", - "patch": { - "properties": { - "has_downloads": null - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] - }, - "version": "2026-03-10" + "lexical_commit_sha": { + "type": "string" } - ] + } } - ] - }, - "temp_clone_token": { - "type": [ - "string", - "null" - ] - }, - "allow_squash_merge": { - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "type": "boolean", - "examples": [ - false - ] - }, - "allow_merge_commit": { - "type": "boolean", - "examples": [ - true - ] - }, - "allow_update_branch": { - "type": "boolean", - "examples": [ - true - ] - }, - "use_squash_pr_title_as_default": { - "type": "boolean", - "examples": [ - false - ] - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit).", - "examples": [ - "PR_TITLE" - ] - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message.", - "examples": [ - "PR_BODY" - ] - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n - `PR_TITLE` - default to the pull request's title.\n - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).", - "examples": [ - "PR_TITLE" - ] - }, - "merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message.", - "examples": [ - "PR_BODY" - ] - }, - "allow_forking": { - "type": "boolean", - "examples": [ - true - ] - }, - "web_commit_signoff_required": { - "type": "boolean", - "examples": [ - false - ] - }, - "subscribers_count": { - "type": "integer", - "examples": [ - 42 - ] - }, - "network_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "license": { - "anyOf": [ + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ], + "x-github-breaking-changes": [ { - "type": "null" + "changeset": "remove_use_squash_pr_title_as_default", + "patch": { + "properties": { + "use_squash_pr_title_as_default": null + } + }, + "version": "2026-03-10" }, { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" + "changeset": "deprecate_beta_media_type", + "patch": { + "properties": { + "master_branch": null } }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "organization": { - "anyOf": [ - { - "type": "null" + "version": "2026-03-10" }, { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDQ6VXNlcjE=" - ] - }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] - }, - "gravatar_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "changeset": "remove_has_downloads", + "patch": { + "properties": { + "has_downloads": null }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] - } + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] }, - "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" - ] + "version": "2026-03-10" } ] }, - "parent": { + "source": { "title": "Repository", "description": "A repository on GitHub.", "type": "object", @@ -721168,2149 +731323,3441 @@ true ] }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" + "allow_forking": { + "description": "Whether to allow forking this repo", + "type": "boolean" + }, + "web_commit_signoff_required": { + "description": "Whether to require contributors to sign off on web-based commits", + "default": false, + "type": "boolean" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:42Z\"" + ] + }, + "anonymous_access_enabled": { + "type": "boolean", + "description": "Whether anonymous git access is enabled for this repository" + }, + "code_search_index_status": { + "type": "object", + "description": "The status of the code search index for this repository", + "properties": { + "lexical_search_ok": { + "type": "boolean" + }, + "lexical_commit_sha": { + "type": "string" + } + } + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_downloads", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ], + "x-github-breaking-changes": [ + { + "changeset": "remove_use_squash_pr_title_as_default", + "patch": { + "properties": { + "use_squash_pr_title_as_default": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "deprecate_beta_media_type", + "patch": { + "properties": { + "master_branch": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "remove_has_downloads", + "patch": { + "properties": { + "has_downloads": null + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at" + ] + }, + "version": "2026-03-10" + } + ] + }, + "forks": { + "type": "integer" + }, + "master_branch": { + "type": "string" + }, + "open_issues": { + "type": "integer" + }, + "watchers": { + "type": "integer" + }, + "anonymous_access_enabled": { + "description": "Whether anonymous git access is allowed.", + "default": true, + "type": "boolean" + }, + "code_of_conduct": { + "title": "Code Of Conduct Simple", + "description": "Code of Conduct Simple", + "type": "object", + "properties": { + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/repos/github/docs/community/code_of_conduct" + ] + }, + "key": { + "type": "string", + "examples": [ + "citizen_code_of_conduct" + ] + }, + "name": { + "type": "string", + "examples": [ + "Citizen Code of Conduct" + ] + }, + "html_url": { + "type": [ + "string", + "null" + ], + "format": "uri", + "examples": [ + "https://github.com/github/docs/blob/main/CODE_OF_CONDUCT.md" + ] + } + }, + "required": [ + "url", + "key", + "name", + "html_url" + ] + }, + "security_and_analysis": { + "type": [ + "object", + "null" + ], + "properties": { + "advanced_security": { + "description": "Enable or disable GitHub Advanced Security for the repository.\n\nFor standalone Code Scanning or Secret Protection products, this parameter cannot be used.\n", + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } + }, + "code_security": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } + }, + "dependabot_security_updates": { + "description": "Enable or disable Dependabot security updates for the repository.", + "type": "object", + "properties": { + "status": { + "description": "The enablement status of Dependabot security updates for the repository.", + "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" + ] + } + } + }, + "secret_scanning_non_provider_patterns": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_ai_detection": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_delegated_alert_dismissal": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_delegated_bypass": { + "type": "object", + "properties": { + "status": { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + } + } + }, + "secret_scanning_delegated_bypass_options": { + "type": "object", + "properties": { + "reviewers": { + "type": "array", + "description": "The bypass reviewers for secret scanning delegated bypass", + "items": { + "type": "object", + "required": [ + "reviewer_id", + "reviewer_type" + ], + "properties": { + "reviewer_id": { + "type": "integer", + "description": "The ID of the team or role selected as a bypass reviewer" + }, + "reviewer_type": { + "type": "string", + "description": "The type of the bypass reviewer", + "enum": [ + "TEAM", + "ROLE" + ] + }, + "mode": { + "type": "string", + "description": "The bypass mode for the reviewer", + "enum": [ + "ALWAYS", + "EXEMPT" + ], + "default": "ALWAYS" + } + } + } + } + } + } + } + }, + "custom_properties": { + "type": "object", + "description": "The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values.", + "additionalProperties": true + } + }, + "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", + "clone_url", + "default_branch", + "forks", + "forks_count", + "git_url", + "has_issues", + "has_projects", + "has_wiki", + "has_pages", + "has_discussions", + "homepage", + "language", + "archived", + "disabled", + "mirror_url", + "open_issues", + "open_issues_count", + "license", + "pushed_at", + "size", + "ssh_url", + "stargazers_count", + "svn_url", + "watchers", + "watchers_count", + "created_at", + "updated_at", + "network_count", + "subscribers_count" + ], + "x-github-breaking-changes": [ + { + "changeset": "remove_use_squash_pr_title_as_default", + "patch": { + "properties": { + "use_squash_pr_title_as_default": null + } + }, + "version": "2026-03-10" + }, + { + "changeset": "remove_has_downloads", + "patch": { + "properties": { + "has_downloads": null + } + }, + "version": "2026-03-10" + } + ] + }, + "examples": { + "default": { + "value": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://github.com/licenses/mit" + }, + "language": null, + "forks_count": 9, + "forks": 9, + "stargazers_count": 80, + "watchers_count": 80, + "watchers": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "open_issues": 0, + "is_template": false, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "pull": true, + "push": false, + "admin": false + }, + "allow_rebase_merge": true, + "template_repository": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World-Template", + "full_name": "octocat/Hello-World-Template", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false + }, + "private": false, + "html_url": "https://github.com/octocat/Hello-World-Template", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World-Template", + "archive_url": "https://api.github.com/repos/octocat/Hello-World-Template/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World-Template/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World-Template/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World-Template/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World-Template/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World-Template/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World-Template/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World-Template/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World-Template/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World-Template/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World-Template/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World-Template/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World-Template.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World-Template/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World-Template/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World-Template/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World-Template/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World-Template/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World-Template/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World-Template/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World-Template/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World-Template.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World-Template/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World-Template/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World-Template/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World-Template.git", + "mirror_url": "git:git.example.com/octocat/Hello-World-Template", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World-Template/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World-Template", + "homepage": "https://github.com", + "language": null, + "forks": 9, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "watchers": 80, + "size": 108, + "default_branch": "master", + "open_issues": 0, + "open_issues_count": 0, + "is_template": true, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://api.github.com/licenses/mit" + }, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0 + }, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "allow_forking": true, + "web_commit_signoff_required": false, + "subscribers_count": 42, + "network_count": 0, + "organization": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "Organization", + "site_admin": false + }, + "parent": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false }, - "open_issues": { - "type": "integer" + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true }, - "watchers": { - "type": "integer" + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://api.github.com/licenses/mit" }, - "master_branch": { - "type": "string" + "forks": 1, + "open_issues": 1, + "watchers": 1 + }, + "source": { + "id": 1296269, + "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", + "name": "Hello-World", + "full_name": "octocat/Hello-World", + "owner": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:42Z\"" - ] + "private": false, + "html_url": "https://github.com/octocat/Hello-World", + "description": "This your first repo!", + "fork": false, + "url": "https://api.github.com/repos/octocat/Hello-World", + "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", + "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", + "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", + "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", + "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", + "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", + "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", + "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", + "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", + "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", + "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", + "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", + "events_url": "https://api.github.com/repos/octocat/Hello-World/events", + "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", + "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", + "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", + "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", + "git_url": "git:github.com/octocat/Hello-World.git", + "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", + "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", + "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", + "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", + "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", + "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", + "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", + "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", + "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", + "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", + "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", + "ssh_url": "git@github.com:octocat/Hello-World.git", + "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", + "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", + "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", + "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", + "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", + "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", + "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", + "clone_url": "https://github.com/octocat/Hello-World.git", + "mirror_url": "git:git.example.com/octocat/Hello-World", + "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", + "svn_url": "https://svn.github.com/octocat/Hello-World", + "homepage": "https://github.com", + "language": null, + "forks_count": 9, + "stargazers_count": 80, + "watchers_count": 80, + "size": 108, + "default_branch": "master", + "open_issues_count": 0, + "is_template": true, + "topics": [ + "octocat", + "atom", + "electron", + "api" + ], + "has_issues": true, + "has_projects": true, + "has_wiki": true, + "has_pages": false, + "has_downloads": true, + "archived": false, + "disabled": false, + "visibility": "public", + "pushed_at": "2011-01-26T19:06:43Z", + "created_at": "2011-01-26T19:01:12Z", + "updated_at": "2011-01-26T19:14:43Z", + "permissions": { + "admin": false, + "push": false, + "pull": true }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" + "allow_rebase_merge": true, + "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", + "allow_squash_merge": true, + "allow_auto_merge": false, + "delete_branch_on_merge": true, + "allow_merge_commit": true, + "subscribers_count": 42, + "network_count": 0, + "license": { + "key": "mit", + "name": "MIT License", + "url": "https://api.github.com/licenses/mit", + "spdx_id": "MIT", + "node_id": "MDc6TGljZW5zZW1pdA==", + "html_url": "https://api.github.com/licenses/mit" }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" - }, - "lexical_commit_sha": { - "type": "string" - } + "forks": 1, + "open_issues": 1, + "watchers": 1 + } + }, + "x-github-breaking-changes": [ + { + "changeset": "remove_has_downloads", + "patch": [ + { + "op": "remove", + "path": "/value/has_downloads" } - } - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ], - "x-github-breaking-changes": [ - { - "changeset": "remove_use_squash_pr_title_as_default", - "patch": { - "properties": { - "use_squash_pr_title_as_default": null - } + ], + "version": "2026-03-10" + } + ] + } + } + } + } + }, + "400": { + "description": "Bad Request", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, + "application/scim+json": { + "schema": { + "title": "Scim Error", + "description": "Scim Error", + "type": "object", + "properties": { + "message": { + "type": [ + "string", + "null" + ] + }, + "documentation_url": { + "type": [ + "string", + "null" + ] + }, + "detail": { + "type": [ + "string", + "null" + ] + }, + "status": { + "type": "integer" + }, + "scimType": { + "type": [ + "string", + "null" + ] + }, + "schemas": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" }, - "version": "2026-03-10" - }, - { - "changeset": "deprecate_beta_media_type", - "patch": { - "properties": { - "master_branch": null - } + "field": { + "type": "string" }, - "version": "2026-03-10" - }, - { - "changeset": "remove_has_downloads", - "patch": { - "properties": { - "has_downloads": null - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] + "message": { + "type": "string" }, - "version": "2026-03-10" + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } } - ] + } + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "source": { - "title": "Repository", - "description": "A repository on GitHub.", - "type": "object", - "properties": { - "id": { - "description": "Unique identifier of the repository", - "type": "integer", - "format": "int64", - "examples": [ - 42 - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDEwOlJlcG9zaXRvcnkxMjk2MjY5" - ] - }, - "name": { - "description": "The name of the repository.", - "type": "string", - "examples": [ - "Team Environment" - ] - }, - "full_name": { - "type": "string", - "examples": [ - "octocat/Hello-World" - ] - }, - "license": { - "anyOf": [ - { - "type": "null" - }, - { - "title": "License Simple", - "description": "License Simple", - "type": "object", - "properties": { - "key": { - "type": "string", - "examples": [ - "mit" - ] - }, - "name": { - "type": "string", - "examples": [ - "MIT License" - ] - }, - "url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://api.github.com/licenses/mit" - ] - }, - "spdx_id": { - "type": [ - "string", - "null" - ], - "examples": [ - "MIT" - ] - }, - "node_id": { - "type": "string", - "examples": [ - "MDc6TGljZW5zZW1pdA==" - ] - }, - "html_url": { - "type": "string", - "format": "uri" - } - }, - "required": [ - "key", - "name", - "url", - "spdx_id", - "node_id" - ] - } - ] - }, - "forks": { - "type": "integer" - }, - "permissions": { + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "security-advisories", + "subcategory": "repository-advisories" + } + } + }, + "/repos/{owner}/{repo}/stacks": { + "get": { + "summary": "List pull request stacks", + "description": "Lists pull request stacks in a repository.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/list", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "pull_request", + "description": "Filter to the stack containing this repository pull request number.", + "in": "query", + "required": false, + "schema": { + "type": "integer" + } + }, + { + "name": "per_page", + "description": "The number of results per page (max 100). For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 30 + } + }, + { + "name": "page", + "description": "The page number of the results to fetch. For more information, see \"[Using pagination in the REST API](https://docs.github.com/rest/using-the-rest-api/using-pagination-in-the-rest-api).\"", + "in": "query", + "schema": { + "type": "integer", + "default": 1 + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "title": "Pull Request Stack Minimal", + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { "type": "object", - "properties": { - "admin": { - "type": "boolean" - }, - "pull": { - "type": "boolean" - }, - "triage": { - "type": "boolean" - }, - "push": { - "type": "boolean" - }, - "maintain": { - "type": "boolean" - } - }, "required": [ - "admin", - "pull", - "push" - ] - }, - "owner": { - "title": "Simple User", - "description": "A GitHub user.", - "type": "object", - "properties": { - "name": { - "type": [ - "string", - "null" - ] - }, - "email": { - "type": [ - "string", - "null" - ] - }, - "login": { - "type": "string", - "examples": [ - "octocat" - ] - }, - "id": { - "type": "integer", - "format": "int64", - "examples": [ - 1 - ] + "number", + "state", + "draft", + "merged_at", + "head" + ], + "properties": { + "number": { + "type": "integer" }, - "node_id": { + "state": { "type": "string", - "examples": [ - "MDQ6VXNlcjE=" + "enum": [ + "open", + "closed" ] }, - "avatar_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/images/error/octocat_happy.gif" - ] + "draft": { + "type": "boolean" }, - "gravatar_id": { + "merged_at": { "type": [ "string", "null" ], - "examples": [ - "41d064eb2195891e12d0413f63227ea7" - ] - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat" - ] - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat" - ] - }, - "followers_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/followers" - ] - }, - "following_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/following{/other_user}" - ] - }, - "gists_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/gists{/gist_id}" - ] - }, - "starred_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/starred{/owner}{/repo}" - ] - }, - "subscriptions_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/subscriptions" - ] - }, - "organizations_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/orgs" - ] - }, - "repos_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/repos" - ] - }, - "events_url": { - "type": "string", - "examples": [ - "https://api.github.com/users/octocat/events{/privacy}" - ] - }, - "received_events_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/users/octocat/received_events" - ] - }, - "type": { - "type": "string", - "examples": [ - "User" - ] - }, - "site_admin": { - "type": "boolean" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:55Z\"" - ] + "format": "date-time" }, - "user_view_type": { - "type": "string", - "examples": [ - "public" - ] + "head": { + "type": "object", + "required": [ + "ref", + "sha" + ], + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "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" - ] - }, - "private": { - "description": "Whether the repository is private or public.", - "default": false, - "type": "boolean" - }, - "html_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://github.com/octocat/Hello-World" - ] - }, - "description": { - "type": [ - "string", - "null" - ], - "examples": [ - "This your first repo!" - ] - }, - "fork": { - "type": "boolean" - }, - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/octocat/Hello-World" - ] - }, - "archive_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}" - ] - }, - "assignees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/assignees{/user}" - ] - }, - "blobs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}" - ] - }, - "branches_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/branches{/branch}" - ] - }, - "collaborators_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}" - ] - }, - "comments_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/comments{/number}" - ] - }, - "commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/commits{/sha}" - ] - }, - "compare_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}" - ] - }, - "contents_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contents/{+path}" - ] - }, - "contributors_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/contributors" - ] - }, - "deployments_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/deployments" - ] - }, - "downloads_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/downloads" - ] - }, - "events_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/events" - ] - }, - "forks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/forks" - ] - }, - "git_commits_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}" - ] - }, - "git_refs_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}" - ] - }, - "git_tags_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}" - ] - }, - "git_url": { - "type": "string", - "examples": [ - "git:github.com/octocat/Hello-World.git" - ] - }, - "issue_comment_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}" - ] - }, - "issue_events_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues/events{/number}" - ] - }, - "issues_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/issues{/number}" - ] - }, - "keys_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/keys{/key_id}" - ] - }, - "labels_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/labels{/name}" - ] - }, - "languages_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/languages" - ] - }, - "merges_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/merges" - ] - }, - "milestones_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/milestones{/number}" - ] - }, - "notifications_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}" - ] - }, - "pulls_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/pulls{/number}" - ] - }, - "releases_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/releases{/id}" - ] - }, - "ssh_url": { - "type": "string", - "examples": [ - "git@github.com:octocat/Hello-World.git" - ] - }, - "stargazers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/stargazers" - ] - }, - "statuses_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/statuses/{sha}" - ] - }, - "subscribers_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscribers" - ] - }, - "subscription_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/subscription" - ] - }, - "tags_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/tags" - ] - }, - "teams_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/teams" - ] - }, - "trees_url": { - "type": "string", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}" - ] - }, - "clone_url": { - "type": "string", - "examples": [ - "https://github.com/octocat/Hello-World.git" - ] - }, - "mirror_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "git:git.example.com/octocat/Hello-World" - ] - }, - "hooks_url": { - "type": "string", - "format": "uri", - "examples": [ - "http://api.github.com/repos/octocat/Hello-World/hooks" - ] - }, - "svn_url": { - "type": "string", - "format": "uri", - "examples": [ - "https://svn.github.com/octocat/Hello-World" - ] - }, - "homepage": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com" - ] - }, - "language": { - "type": [ - "string", - "null" - ] - }, - "forks_count": { - "type": "integer", - "examples": [ - 9 - ] - }, - "stargazers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "watchers_count": { - "type": "integer", - "examples": [ - 80 - ] - }, - "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", - "examples": [ - 108 - ] - }, - "default_branch": { - "description": "The default branch of the repository.", - "type": "string", - "examples": [ - "master" - ] - }, - "open_issues_count": { - "type": "integer", - "examples": [ - 0 - ] - }, - "is_template": { - "description": "Whether this repository acts as a template that can be used to generate new repositories.", - "default": false, - "type": "boolean", - "examples": [ - true - ] + } + } + } + } + } + }, + "examples": { + "default": { + "value": [ + { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" }, - "topics": { - "type": "array", - "items": { + "pull_requests": [ + { + "number": 101, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11" + } + }, + { + "number": 102, + "state": "open", + "draft": false, + "merged_at": null, + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22" + } + } + ], + "open": true, + "created_at": "2026-04-15T10:00:00Z" + } + ] + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed, or the endpoint has been spammed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] } - }, - "has_issues": { - "description": "Whether issues are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_projects": { - "description": "Whether projects are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_wiki": { - "description": "Whether the wiki is enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pages": { - "type": "boolean" - }, - "has_downloads": { - "description": "Whether downloads are enabled.", - "default": true, - "type": "boolean", - "deprecated": true, - "examples": [ - true - ] - }, - "has_discussions": { - "description": "Whether discussions are enabled.", - "default": false, - "type": "boolean", - "examples": [ - true - ] - }, - "has_pull_requests": { - "description": "Whether pull requests are enabled.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "pull_request_creation_policy": { - "description": "The policy controlling who can create pull requests: all or collaborators_only.", - "type": "string", - "enum": [ - "all", - "collaborators_only" - ], - "examples": [ - "all" - ] - }, - "archived": { - "description": "Whether the repository is archived.", - "default": false, - "type": "boolean" - }, - "disabled": { - "type": "boolean", - "description": "Returns whether or not this repository disabled." - }, - "visibility": { - "description": "The repository visibility: public, private, or internal.", - "default": "public", - "type": "string" - }, - "pushed_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:06:43Z" - ] - }, - "created_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:01:12Z" - ] - }, - "updated_at": { - "type": [ - "string", - "null" - ], - "format": "date-time", - "examples": [ - "2011-01-26T19:14:43Z" - ] - }, - "allow_rebase_merge": { - "description": "Whether to allow rebase merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "temp_clone_token": { - "type": "string" - }, - "allow_squash_merge": { - "description": "Whether to allow squash merges for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_auto_merge": { - "description": "Whether to allow Auto-merge to be used on pull requests.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "delete_branch_on_merge": { - "description": "Whether to delete head branches when pull requests are merged", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "allow_update_branch": { - "description": "Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.", - "default": false, - "type": "boolean", - "examples": [ - false - ] - }, - "use_squash_pr_title_as_default": { - "type": "boolean", - "description": "Whether a squash merge commit can use the pull request title as default. **This property is closing down. Please use `squash_merge_commit_title` instead.", - "default": false, - "deprecated": true - }, - "squash_merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "COMMIT_OR_PR_TITLE" - ], - "description": "The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)." - }, - "squash_merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "COMMIT_MESSAGES", - "BLANK" - ], - "description": "The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message." - }, - "merge_commit_title": { - "type": "string", - "enum": [ - "PR_TITLE", - "MERGE_MESSAGE" - ], - "description": "The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)." - }, - "merge_commit_message": { - "type": "string", - "enum": [ - "PR_BODY", - "PR_TITLE", - "BLANK" - ], - "description": "The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message." - }, - "allow_merge_commit": { - "description": "Whether to allow merge commits for pull requests.", - "default": true, - "type": "boolean", - "examples": [ - true - ] - }, - "allow_forking": { - "description": "Whether to allow forking this repo", - "type": "boolean" - }, - "web_commit_signoff_required": { - "description": "Whether to require contributors to sign off on web-based commits", - "default": false, - "type": "boolean" - }, - "open_issues": { - "type": "integer" - }, - "watchers": { - "type": "integer" - }, - "master_branch": { + } + } + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + }, + "post": { + "summary": "Create a pull request stack", + "description": "Creates a stack from an ordered list of pull request numbers. Provide the pull\nrequest numbers from the bottom of the stack to the top. Each pull request's\nbase ref must match the previous pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/create", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers forming the stack from bottom to top.", + "items": { + "type": "integer" + }, + "minItems": 2, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 101, + 102, + 103 + ] + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { "type": "string" - }, - "starred_at": { - "type": "string", - "examples": [ - "\"2020-07-09T00:17:42Z\"" - ] - }, - "anonymous_access_enabled": { - "type": "boolean", - "description": "Whether anonymous git access is enabled for this repository" - }, - "code_search_index_status": { - "type": "object", - "description": "The status of the code search index for this repository", - "properties": { - "lexical_search_ok": { - "type": "boolean" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "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", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + } }, - "lexical_commit_sha": { - "type": "string" + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } } } - } + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_downloads", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ], - "x-github-breaking-changes": [ + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ { - "changeset": "remove_use_squash_pr_title_as_default", - "patch": { - "properties": { - "use_squash_pr_title_as_default": null - } + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" }, - "version": "2026-03-10" - }, - { - "changeset": "deprecate_beta_media_type", - "patch": { - "properties": { - "master_branch": null + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" } }, - "version": "2026-03-10" + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } }, { - "changeset": "remove_has_downloads", - "patch": { - "properties": { - "has_downloads": null - }, - "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", - "created_at", - "updated_at" - ] + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" }, - "version": "2026-03-10" + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } } ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "forks": { - "type": "integer" + "documentation_url": { + "type": "string" }, - "master_branch": { + "url": { "type": "string" }, - "open_issues": { + "status": { + "type": "string" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't form a\nvalid stack.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] + } + } + ] + } + } + } + } + } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 + ] + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't form a linear stack", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack" + } + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}": { + "get": { + "summary": "Get a pull request stack", + "description": "Gets a pull request stack by providing its stack number.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/get", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { "type": "integer" }, - "watchers": { + "number": { "type": "integer" }, - "anonymous_access_enabled": { - "description": "Whether anonymous git access is allowed.", - "default": true, - "type": "boolean" + "node_id": { + "type": "string" }, - "code_of_conduct": { - "title": "Code Of Conduct Simple", - "description": "Code of Conduct Simple", + "url": { + "type": "string", + "format": "uri" + }, + "base": { "type": "object", - "properties": { - "url": { - "type": "string", - "format": "uri", - "examples": [ - "https://api.github.com/repos/github/docs/community/code_of_conduct" - ] - }, - "key": { - "type": "string", - "examples": [ - "citizen_code_of_conduct" - ] - }, - "name": { - "type": "string", - "examples": [ - "Citizen Code of Conduct" - ] - }, - "html_url": { - "type": [ - "string", - "null" - ], - "format": "uri", - "examples": [ - "https://github.com/github/docs/blob/main/CODE_OF_CONDUCT.md" - ] - } - }, "required": [ - "url", - "key", - "name", - "html_url" - ] - }, - "security_and_analysis": { - "type": [ - "object", - "null" + "ref" ], "properties": { - "advanced_security": { - "description": "Enable or disable GitHub Advanced Security for the repository.\n\nFor standalone Code Scanning or Secret Protection products, this parameter cannot be used.\n", - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "code_security": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] - } - } - }, - "dependabot_security_updates": { - "description": "Enable or disable Dependabot security updates for the repository.", - "type": "object", - "properties": { - "status": { - "description": "The enablement status of Dependabot security updates for the repository.", - "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" - ] - } - } - }, - "secret_scanning_non_provider_patterns": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "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", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + } + }, + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } } } - }, - "secret_scanning_ai_detection": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" } - } - }, - "secret_scanning_delegated_alert_dismissal": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" } } }, - "secret_scanning_delegated_bypass": { - "type": "object", - "properties": { - "status": { - "type": "string", - "enum": [ - "enabled", - "disabled" - ] + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" } - } - }, - "secret_scanning_delegated_bypass_options": { - "type": "object", - "properties": { - "reviewers": { - "type": "array", - "description": "The bypass reviewers for secret scanning delegated bypass", - "items": { - "type": "object", - "required": [ - "reviewer_id", - "reviewer_type" - ], - "properties": { - "reviewer_id": { - "type": "integer", - "description": "The ID of the team or role selected as a bypass reviewer" - }, - "reviewer_type": { - "type": "string", - "description": "The type of the bypass reviewer", - "enum": [ - "TEAM", - "ROLE" - ] - }, - "mode": { - "type": "string", - "description": "The bypass mode for the reviewer", - "enum": [ - "ALWAYS", - "EXEMPT" - ], - "default": "ALWAYS" - } - } - } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" } } } - } + ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", + "content": { + "application/json": { + "schema": { + "title": "Basic Error", + "description": "Basic Error", + "type": "object", + "properties": { + "message": { + "type": "string" }, - "custom_properties": { - "type": "object", - "description": "The custom properties that were defined for the repository. The keys are the custom property names, and the values are the corresponding custom property values.", - "additionalProperties": true + "documentation_url": { + "type": "string" + }, + "url": { + "type": "string" + }, + "status": { + "type": "string" } - }, + } + } + } + } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/add": { + "post": { + "summary": "Add pull requests to a pull request stack", + "description": "Appends an ordered list of pull request numbers onto the top of an existing\nstack. Provide only the pull requests you want to add, from the current top of\nthe stack upward. The first new pull request's base ref must match the current\ntop pull request's head ref.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/add", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "pull_requests" + ], + "properties": { + "pull_requests": { + "type": "array", + "description": "An ordered list of pull request numbers to append to the stack, from the current top upward.", + "items": { + "type": "integer" + }, + "minItems": 1, + "maxItems": 100 + } + } + }, + "examples": { + "default": { + "value": { + "pull_requests": [ + 104, + 102 + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", "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", + "number", "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", - "clone_url", - "default_branch", - "forks", - "forks_count", - "git_url", - "has_issues", - "has_projects", - "has_wiki", - "has_pages", - "has_discussions", - "homepage", - "language", - "archived", - "disabled", - "mirror_url", - "open_issues", - "open_issues_count", - "license", - "pushed_at", - "size", - "ssh_url", - "stargazers_count", - "svn_url", - "watchers", - "watchers_count", + "base", + "open", "created_at", - "updated_at", - "network_count", - "subscribers_count" + "pull_requests" ], - "x-github-breaking-changes": [ - { - "changeset": "remove_use_squash_pr_title_as_default", - "patch": { - "properties": { - "use_squash_pr_title_as_default": null - } - }, - "version": "2026-03-10" + "properties": { + "id": { + "type": "integer" }, - { - "changeset": "remove_has_downloads", - "patch": { - "properties": { - "has_downloads": null - } - }, - "version": "2026-03-10" - } - ] - }, - "examples": { - "default": { - "value": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://github.com/licenses/mit" - }, - "language": null, - "forks_count": 9, - "forks": 9, - "stargazers_count": 80, - "watchers_count": 80, - "watchers": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "open_issues": 0, - "is_template": false, - "topics": [ - "octocat", - "atom", - "electron", - "api" + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "pull": true, - "push": false, - "admin": false - }, - "allow_rebase_merge": true, - "template_repository": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World-Template", - "full_name": "octocat/Hello-World-Template", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World-Template", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World-Template", - "archive_url": "https://api.github.com/repos/octocat/Hello-World-Template/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World-Template/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World-Template/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World-Template/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World-Template/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World-Template/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World-Template/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World-Template/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World-Template/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World-Template/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World-Template/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World-Template/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World-Template.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World-Template/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World-Template/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World-Template/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World-Template/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World-Template/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World-Template/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World-Template/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World-Template/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World-Template/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World-Template.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World-Template/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World-Template/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World-Template/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World-Template/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World-Template/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World-Template/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World-Template.git", - "mirror_url": "git:git.example.com/octocat/Hello-World-Template", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World-Template/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World-Template", - "homepage": "https://github.com", - "language": null, - "forks": 9, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "watchers": 80, - "size": 108, - "default_branch": "master", - "open_issues": 0, - "open_issues_count": 0, - "is_template": true, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://api.github.com/licenses/mit" - }, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0 - }, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "allow_forking": true, - "web_commit_signoff_required": false, - "subscribers_count": 42, - "network_count": 0, - "organization": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "Organization", - "site_admin": false - }, - "parent": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://api.github.com/licenses/mit" - }, - "forks": 1, - "open_issues": 1, - "watchers": 1 - }, - "source": { - "id": 1296269, - "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", - "name": "Hello-World", - "full_name": "octocat/Hello-World", - "owner": { - "login": "octocat", - "id": 1, - "node_id": "MDQ6VXNlcjE=", - "avatar_url": "https://github.com/images/error/octocat_happy.gif", - "gravatar_id": "", - "url": "https://api.github.com/users/octocat", - "html_url": "https://github.com/octocat", - "followers_url": "https://api.github.com/users/octocat/followers", - "following_url": "https://api.github.com/users/octocat/following{/other_user}", - "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", - "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", - "organizations_url": "https://api.github.com/users/octocat/orgs", - "repos_url": "https://api.github.com/users/octocat/repos", - "events_url": "https://api.github.com/users/octocat/events{/privacy}", - "received_events_url": "https://api.github.com/users/octocat/received_events", - "type": "User", - "site_admin": false - }, - "private": false, - "html_url": "https://github.com/octocat/Hello-World", - "description": "This your first repo!", - "fork": false, - "url": "https://api.github.com/repos/octocat/Hello-World", - "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", - "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", - "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", - "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", - "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", - "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", - "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", - "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", - "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", - "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", - "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", - "events_url": "https://api.github.com/repos/octocat/Hello-World/events", - "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", - "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", - "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", - "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", - "git_url": "git:github.com/octocat/Hello-World.git", - "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", - "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", - "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", - "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", - "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", - "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", - "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", - "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", - "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", - "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", - "ssh_url": "git@github.com:octocat/Hello-World.git", - "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", - "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", - "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", - "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", - "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", - "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", - "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", - "clone_url": "https://github.com/octocat/Hello-World.git", - "mirror_url": "git:git.example.com/octocat/Hello-World", - "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", - "svn_url": "https://svn.github.com/octocat/Hello-World", - "homepage": "https://github.com", - "language": null, - "forks_count": 9, - "stargazers_count": 80, - "watchers_count": 80, - "size": 108, - "default_branch": "master", - "open_issues_count": 0, - "is_template": true, - "topics": [ - "octocat", - "atom", - "electron", - "api" - ], - "has_issues": true, - "has_projects": true, - "has_wiki": true, - "has_pages": false, - "has_downloads": true, - "archived": false, - "disabled": false, - "visibility": "public", - "pushed_at": "2011-01-26T19:06:43Z", - "created_at": "2011-01-26T19:01:12Z", - "updated_at": "2011-01-26T19:14:43Z", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "allow_rebase_merge": true, - "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", - "allow_squash_merge": true, - "allow_auto_merge": false, - "delete_branch_on_merge": true, - "allow_merge_commit": true, - "subscribers_count": 42, - "network_count": 0, - "license": { - "key": "mit", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT", - "node_id": "MDc6TGljZW5zZW1pdA==", - "html_url": "https://api.github.com/licenses/mit" - }, - "forks": 1, - "open_issues": 1, - "watchers": 1 + "properties": { + "ref": { + "type": "string" + } } }, - "x-github-breaking-changes": [ - { - "changeset": "remove_has_downloads", - "patch": [ + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ { - "op": "remove", - "path": "/value/has_downloads" + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "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", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + } + }, + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + } } - ], - "version": "2026-03-10" + ] } - ] + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + }, + { + "id": 100002, + "node_id": "PR_kwDOABCDEF4AAAAB", + "title": "Add user API", + "state": "open", + "merged_at": null, + "draft": true, + "html_url": "https://github.com/octocat/hello-world/pull/102", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 102, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", + "head": { + "ref": "user-api", + "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } } } } } }, - "400": { - "description": "Bad Request", + "404": { + "description": "Resource not found", "content": { "application/json": { "schema": { @@ -723332,45 +734779,39 @@ } } } - }, - "application/scim+json": { + } + } + }, + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", + "content": { + "application/json": { "schema": { - "title": "Scim Error", - "description": "Scim Error", + "title": "Basic Error", + "description": "Basic Error", "type": "object", "properties": { "message": { - "type": [ - "string", - "null" - ] + "type": "string" }, "documentation_url": { - "type": [ - "string", - "null" - ] + "type": "string" }, - "detail": { - "type": [ - "string", - "null" - ] + "url": { + "type": "string" }, "status": { - "type": "integer" - }, - "scimType": { - "type": [ - "string", - "null" - ] - }, - "schemas": { - "type": "array", - "items": { - "type": "string" - } + "type": "string" + } + } + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "status": "409" } } } @@ -723378,7 +734819,7 @@ } }, "422": { - "description": "Validation failed, or the endpoint has been spammed.", + "description": "Validation failed. Returned when the request references pull requests that\ndon't exist in the repository, or when the pull requests can't be appended\nto the stack.", "content": { "application/json": { "schema": { @@ -723439,7 +734880,14 @@ "null" ], "items": { - "type": "string" + "oneOf": [ + { + "type": "string" + }, + { + "type": "integer" + } + ] } } ] @@ -723448,12 +734896,537 @@ } } } + }, + "examples": { + "missing_pull_requests": { + "summary": "One or more pull request numbers don't exist in the repository", + "value": { + "message": "Validation Failed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", + "errors": [ + { + "resource": "Stack", + "field": "pull_requests", + "code": "missing", + "value": [ + 123 + ] + } + ] + } + }, + "not_a_linear_stack": { + "summary": "The pull requests don't continue the stack linearly", + "value": { + "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + }, + "already_stacked": { + "summary": "A pull request already belongs to a stack", + "value": { + "message": "Pull request #123 is already part of a stack", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack" + } + } } } } + } + }, + "x-github": { + "githubCloudOnly": false, + "enabledForGitHubApps": true, + "category": "pulls", + "subcategory": "stacks" + } + } + }, + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": { + "post": { + "summary": "Remove pull requests from a pull request stack", + "description": "Removes the unmerged pull requests from a stack. Pull requests that cannot be\nunstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated\nstack is returned with a `200`. When no pull requests remain, the stack is\ndissolved and a `204` is returned.", + "tags": [ + "pulls" + ], + "operationId": "pull-request-stacks/unstack", + "externalDocs": { + "description": "API method documentation", + "url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + }, + "parameters": [ + { + "name": "owner", + "description": "The account owner of the repository. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } }, - "403": { - "description": "Forbidden", + { + "name": "repo", + "description": "The name of the repository without the `.git` extension. The name is not case sensitive.", + "in": "path", + "required": true, + "schema": { + "type": "string" + } + }, + { + "name": "stack_number", + "description": "The number that identifies the pull request stack.", + "in": "path", + "required": true, + "schema": { + "type": "integer" + } + } + ], + "responses": { + "200": { + "description": "Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "id", + "number", + "node_id", + "url", + "base", + "open", + "created_at", + "pull_requests" + ], + "properties": { + "id": { + "type": "integer" + }, + "number": { + "type": "integer" + }, + "node_id": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri" + }, + "base": { + "type": "object", + "required": [ + "ref" + ], + "properties": { + "ref": { + "type": "string" + } + } + }, + "open": { + "type": "boolean", + "description": "Whether the stack has any open pull request. False when all pull requests are merged or closed." + }, + "created_at": { + "type": "string", + "format": "date-time" + }, + "pull_requests": { + "type": "array", + "items": { + "title": "Pull Request Stack Pull Request", + "type": "object", + "allOf": [ + { + "title": "Pull Request Minimal", + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "number": { + "type": "integer" + }, + "url": { + "type": "string" + }, + "head": { + "type": "object", + "properties": { + "ref": { + "type": "string" + }, + "sha": { + "type": "string" + }, + "repo": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "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", + "format": "int64" + }, + "url": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "url", + "name" + ] + } + }, + "required": [ + "ref", + "sha", + "repo" + ] + } + }, + "required": [ + "id", + "number", + "url", + "head", + "base" + ] + }, + { + "type": "object", + "required": [ + "node_id", + "title", + "state", + "merged_at", + "draft", + "html_url", + "user" + ], + "properties": { + "node_id": { + "type": "string" + }, + "title": { + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "open", + "closed" + ] + }, + "merged_at": { + "type": [ + "string", + "null" + ], + "format": "date-time" + }, + "draft": { + "type": "boolean" + }, + "html_url": { + "type": "string", + "format": "uri" + }, + "user": { + "anyOf": [ + { + "type": "null" + }, + { + "title": "Simple User", + "description": "A GitHub user.", + "type": "object", + "properties": { + "name": { + "type": [ + "string", + "null" + ] + }, + "email": { + "type": [ + "string", + "null" + ] + }, + "login": { + "type": "string", + "examples": [ + "octocat" + ] + }, + "id": { + "type": "integer", + "format": "int64", + "examples": [ + 1 + ] + }, + "node_id": { + "type": "string", + "examples": [ + "MDQ6VXNlcjE=" + ] + }, + "avatar_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/images/error/octocat_happy.gif" + ] + }, + "gravatar_id": { + "type": [ + "string", + "null" + ], + "examples": [ + "41d064eb2195891e12d0413f63227ea7" + ] + }, + "url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat" + ] + }, + "html_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://github.com/octocat" + ] + }, + "followers_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/followers" + ] + }, + "following_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/following{/other_user}" + ] + }, + "gists_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/gists{/gist_id}" + ] + }, + "starred_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/starred{/owner}{/repo}" + ] + }, + "subscriptions_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/subscriptions" + ] + }, + "organizations_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/orgs" + ] + }, + "repos_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/repos" + ] + }, + "events_url": { + "type": "string", + "examples": [ + "https://api.github.com/users/octocat/events{/privacy}" + ] + }, + "received_events_url": { + "type": "string", + "format": "uri", + "examples": [ + "https://api.github.com/users/octocat/received_events" + ] + }, + "type": { + "type": "string", + "examples": [ + "User" + ] + }, + "site_admin": { + "type": "boolean" + }, + "starred_at": { + "type": "string", + "examples": [ + "\"2020-07-09T00:17:55Z\"" + ] + }, + "user_view_type": { + "type": "string", + "examples": [ + "public" + ] + } + }, + "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" + ] + } + ] + } + } + } + ] + } + } + } + }, + "examples": { + "default": { + "value": { + "id": 9876543, + "number": 42, + "node_id": "S_kwDOABCDEF4AAAAA", + "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", + "base": { + "ref": "main" + }, + "open": true, + "created_at": "2026-04-15T10:00:00Z", + "pull_requests": [ + { + "id": 100001, + "node_id": "PR_kwDOABCDEF4AAAAA", + "title": "Add user model", + "state": "open", + "merged_at": null, + "draft": false, + "html_url": "https://github.com/octocat/hello-world/pull/101", + "user": { + "login": "octocat", + "id": 1, + "node_id": "MDQ6VXNlcjE=", + "avatar_url": "https://github.com/images/error/octocat_happy.gif", + "gravatar_id": "", + "url": "https://api.github.com/users/octocat", + "html_url": "https://github.com/octocat", + "followers_url": "https://api.github.com/users/octocat/followers", + "following_url": "https://api.github.com/users/octocat/following{/other_user}", + "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", + "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", + "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", + "organizations_url": "https://api.github.com/users/octocat/orgs", + "repos_url": "https://api.github.com/users/octocat/repos", + "events_url": "https://api.github.com/users/octocat/events{/privacy}", + "received_events_url": "https://api.github.com/users/octocat/received_events", + "type": "User", + "site_admin": false, + "user_view_type": "public" + }, + "number": 101, + "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", + "head": { + "ref": "user-model", + "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + }, + "base": { + "ref": "main", + "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", + "repo": { + "id": 1296269, + "url": "https://api.github.com/repos/octocat/hello-world", + "name": "hello-world" + } + } + } + ] + } + } + } + } + } + }, + "404": { + "description": "Resource not found", "content": { "application/json": { "schema": { @@ -723478,8 +735451,8 @@ } } }, - "404": { - "description": "Resource not found", + "409": { + "description": "Conflict. Returned when the stack is being modified by another request.", "content": { "application/json": { "schema": { @@ -723500,16 +735473,113 @@ "type": "string" } } + }, + "examples": { + "being_modified": { + "summary": "Another request is currently modifying the stack", + "value": { + "message": "Stack is currently being modified", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack", + "status": "409" + } + } + } + } + } + }, + "422": { + "description": "Validation failed. Returned when the stack can't be unstacked because every\npull request in it is locked and cannot be removed.", + "content": { + "application/json": { + "schema": { + "title": "Validation Error", + "description": "Validation Error", + "type": "object", + "required": [ + "message", + "documentation_url" + ], + "properties": { + "message": { + "type": "string" + }, + "documentation_url": { + "type": "string" + }, + "errors": { + "type": "array", + "items": { + "type": "object", + "required": [ + "code" + ], + "properties": { + "resource": { + "type": "string" + }, + "field": { + "type": "string" + }, + "message": { + "type": "string" + }, + "code": { + "type": "string" + }, + "index": { + "type": "integer" + }, + "value": { + "oneOf": [ + { + "type": [ + "string", + "null" + ] + }, + { + "type": [ + "integer", + "null" + ] + }, + { + "type": [ + "array", + "null" + ], + "items": { + "type": "string" + } + } + ] + } + } + } + } + } + }, + "examples": { + "cannot_be_removed": { + "summary": "Every pull request in the stack is locked and can't be removed", + "value": { + "message": "Pull requests in this stack cannot be removed", + "documentation_url": "https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack" + } + } } } } + }, + "204": { + "description": "A header with no content is returned." } }, "x-github": { "githubCloudOnly": false, "enabledForGitHubApps": true, - "category": "security-advisories", - "subcategory": "repository-advisories" + "category": "pulls", + "subcategory": "stacks" } } }, diff --git a/descriptions-next/api.github.com/dereferenced/api.github.com.deref.yaml b/descriptions-next/api.github.com/dereferenced/api.github.com.deref.yaml index 5c15f913e5..2c72f93847 100644 --- a/descriptions-next/api.github.com/dereferenced/api.github.com.deref.yaml +++ b/descriptions-next/api.github.com/dereferenced/api.github.com.deref.yaml @@ -14922,7 +14922,7 @@ paths: properties: action: type: string - discussion: &782 + discussion: &783 title: Discussion description: A Discussion in a repository. type: object @@ -15708,7 +15708,7 @@ paths: - hooray - eyes - rocket - sub_issues_summary: &700 + sub_issues_summary: &701 title: Sub-issues Summary type: object properties: @@ -15838,7 +15838,7 @@ paths: - url - created_at - updated_at - issue_dependencies_summary: &701 + issue_dependencies_summary: &702 title: Issue Dependencies Summary type: object properties: @@ -17431,7 +17431,7 @@ paths: url: type: string format: uri - user: &709 + user: &710 title: Public User description: Public User type: object @@ -23479,7 +23479,7 @@ paths: parameters: - *75 - *117 - - &760 + - &761 name: month description: If specified, only return results for a single month. The value of `month` is an integer between `1` and `12`. If no year is specified the @@ -23591,7 +23591,7 @@ paths: - *117 - *118 - *119 - - &761 + - &762 name: repository description: The repository name to query for usage in the format owner/repository. in: query @@ -23599,7 +23599,7 @@ paths: schema: type: string - *122 - - &762 + - &763 name: sku description: The SKU to query for usage. in: query @@ -31681,12 +31681,12 @@ paths: required: - subject_digests examples: - default: &741 + default: &742 value: subject_digests: - sha256:abc123 - sha512:def456 - withPredicateType: &742 + withPredicateType: &743 value: subject_digests: - sha256:abc123 @@ -31745,7 +31745,7 @@ paths: description: The cursor to the previous page. description: Information about the current page. examples: - default: &743 + default: &744 value: attestations_subject_digests: - sha256:abc: @@ -33222,18 +33222,18 @@ paths: description: |- The Git reference, formatted as `refs/pull//merge`, `refs/pull//head`, `refs/heads/` or simply ``. - analysis_key: &446 + analysis_key: &447 type: string description: Identifies the configuration under which the analysis was executed. For example, in GitHub Actions this includes the workflow filename and job name. - environment: &447 + environment: &448 type: string description: Identifies the variable values associated with the environment in which the analysis that generated this alert instance was performed, such as the language that was analyzed. - category: &448 + category: &449 type: string description: Identifies the configuration under which the analysis was executed. Used to distinguish between multiple @@ -33253,7 +33253,7 @@ paths: with placeholder links for related locations replaced by links to the relevant code. Only populated when related locations are available for the alert instance. - location: &449 + location: &450 type: object description: Describe a region within a file for the alert. properties: @@ -33274,7 +33274,7 @@ paths: description: |- Classifications that have been applied to the file that triggered the alert. For example identifying it as documentation, or a generated file. - items: &450 + items: &451 type: - string - 'null' @@ -34609,7 +34609,7 @@ paths: machine: anyOf: - type: 'null' - - &462 + - &463 type: object title: Codespace machine description: A description of the machine powering a codespace. @@ -35561,7 +35561,7 @@ paths: - updated_at - visibility examples: - default: &463 + default: &464 value: total_count: 2 secrets: @@ -35599,7 +35599,7 @@ paths: description: Response content: application/json: - schema: &464 + schema: &465 title: CodespacesPublicKey description: The public key used for setting Codespaces secrets. type: object @@ -35634,7 +35634,7 @@ paths: - key_id - key examples: - default: &465 + default: &466 value: key_id: '012345678912345678' key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 @@ -35666,7 +35666,7 @@ paths: application/json: schema: *196 examples: - default: &467 + default: &468 value: name: GH_TOKEN created_at: '2019-08-10T14:59:22Z' @@ -42719,7 +42719,7 @@ paths: application/json: schema: *251 examples: - default: &461 + default: &462 value: id: 1 name: monalisa-octocat-hello-world-g4wpq6h95q @@ -43998,7 +43998,7 @@ paths: parameters: - *75 - *258 - - &724 + - &725 name: repo_name description: repo_name parameter in: path @@ -45077,7 +45077,7 @@ paths: - nuget - container - *75 - - &725 + - &726 name: visibility description: |- The selected visibility of the packages. This parameter is optional and only filters an existing result set. @@ -45118,7 +45118,7 @@ paths: default: *264 '403': *27 '401': *23 - '400': &727 + '400': &728 description: The value of `per_page` multiplied by `page` cannot be greater than 10000. x-github: @@ -47249,7 +47249,7 @@ paths: latest_status_update: anyOf: - type: 'null' - - &810 + - &811 title: Projects v2 Status Update description: An status update belonging to a project type: object @@ -47523,7 +47523,7 @@ paths: content: oneOf: - *83 - - &476 + - &437 title: Pull Request Simple description: Pull Request Simple type: object @@ -48259,7 +48259,7 @@ paths: - updated_at - project_url examples: - default: &747 + default: &748 value: - id: 12345 node_id: PVTF_lADOABCD1234567890 @@ -48436,7 +48436,7 @@ paths: description: The options available for single select fields. At least one option must be provided when creating a single select field. - items: &748 + items: &749 type: object properties: name: @@ -48473,7 +48473,7 @@ paths: description: The field's data type. enum: - iteration - iteration_configuration: &749 + iteration_configuration: &750 type: object description: The configuration for iteration fields. properties: @@ -48523,7 +48523,7 @@ paths: value: name: Due date data_type: date - single_select_field: &750 + single_select_field: &751 summary: Create a single select field value: name: Priority @@ -48550,7 +48550,7 @@ paths: description: raw: High priority items html: High priority items - iteration_field: &751 + iteration_field: &752 summary: Create an iteration field value: name: Sprint @@ -48576,7 +48576,7 @@ paths: application/json: schema: *284 examples: - text_field: &752 + text_field: &753 value: id: 24680 node_id: PVTF_lADOABCD2468024680 @@ -48585,7 +48585,7 @@ paths: project_url: https://api.github.com/projects/67890 created_at: '2022-05-15T08:00:00Z' updated_at: '2022-05-15T08:00:00Z' - number_field: &753 + number_field: &754 value: id: 13579 node_id: PVTF_lADOABCD1357913579 @@ -48594,7 +48594,7 @@ paths: project_url: https://api.github.com/projects/67890 created_at: '2022-06-01T14:30:00Z' updated_at: '2022-06-01T14:30:00Z' - date_field: &754 + date_field: &755 value: id: 98765 node_id: PVTF_lADOABCD9876598765 @@ -48603,7 +48603,7 @@ paths: project_url: https://api.github.com/projects/67890 created_at: '2022-06-10T09:15:00Z' updated_at: '2022-06-10T09:15:00Z' - single_select_field: &755 + single_select_field: &756 value: id: 12345 node_id: PVTF_lADOABCD1234567890 @@ -48637,7 +48637,7 @@ paths: raw: High priority items created_at: '2022-04-28T12:00:00Z' updated_at: '2022-04-28T12:00:00Z' - iteration_field: &756 + iteration_field: &757 value: id: 11223 node_id: PVTF_lADOABCD1122311223 @@ -48683,7 +48683,7 @@ paths: url: https://docs.github.com/rest/projects/fields#get-project-field-for-organization parameters: - *281 - - &757 + - &758 name: field_id description: The unique identifier of the field. in: path @@ -48698,7 +48698,7 @@ paths: application/json: schema: *284 examples: - default: &758 + default: &759 value: id: 12345 node_id: PVTF_lADOABCD1234567890 @@ -49909,7 +49909,7 @@ paths: description: Response for creating a view in an organization-owned project. content: application/json: - schema: &738 + schema: &739 title: Projects v2 View description: A view inside a projects v2 project type: object @@ -50092,7 +50092,7 @@ paths: parameters: - *281 - *75 - - &759 + - &760 name: view_number description: The number that identifies the project view. in: path @@ -58166,7 +58166,7 @@ paths: application/json: schema: type: array - items: &703 + items: &704 title: Team Member description: A user that is a member of a team, including their role on the team and whether the membership is inherited from @@ -58309,7 +58309,7 @@ paths: - type - url examples: - default: &704 + default: &705 value: - login: octocat id: 1 @@ -58396,7 +58396,7 @@ paths: - state - url examples: - response-if-user-is-a-team-maintainer: &705 + response-if-user-is-a-team-maintainer: &706 summary: Response if user is a team maintainer value: url: https://api.github.com/teams/1/memberships/octocat @@ -58461,7 +58461,7 @@ paths: application/json: schema: *339 examples: - response-if-users-membership-with-team-is-now-pending: &706 + response-if-users-membership-with-team-is-now-pending: &707 summary: Response if user's membership with team is now pending value: url: https://api.github.com/teams/1/memberships/octocat @@ -58575,7 +58575,7 @@ paths: description: Alternative response with repository permissions content: application/json: - schema: &707 + schema: &708 title: Team Repository description: A team's access to a repository. type: object @@ -59389,7 +59389,7 @@ paths: type: array items: *201 examples: - response-if-child-teams-exist: &708 + response-if-child-teams-exist: &709 value: - id: 2 node_id: MDQ6VGVhbTI= @@ -68217,7 +68217,7 @@ paths: properties: name: type: string - commit: &472 + commit: &473 title: Commit description: Commit type: object @@ -71540,7 +71540,7 @@ paths: check. type: array items: *86 - deployment: &771 + deployment: &772 title: Deployment description: A deployment created as the result of an Actions check run from a workflow that references an environment @@ -73852,7 +73852,7 @@ paths: - *427 - *19 - *17 - - &444 + - &445 name: ref description: The Git reference for the results you want to list. The `ref` for a branch can be formatted either as `refs/heads/` or simply @@ -73860,7 +73860,7 @@ paths: in: query required: false schema: *428 - - &445 + - &446 name: pr description: The number of the pull request for the results you want to list. in: query @@ -74050,7 +74050,7 @@ paths: classifications: [] instances_url: https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/3/instances '304': *36 - '403': &437 + '403': &438 description: Response if GitHub Advanced Security is not enabled for this repository content: @@ -74079,7 +74079,7 @@ paths: parameters: - *340 - *341 - - &438 + - &439 name: alert_number in: path description: The number that identifies an alert. You can find this at the @@ -74093,7 +74093,7 @@ paths: description: Response content: application/json: - schema: &439 + schema: &440 type: object properties: number: *181 @@ -74181,6 +74181,10 @@ paths: assignees: type: array items: *4 + linked_pull_requests: + description: Pull requests linked to this alert. + type: array + items: *437 required: - number - created_at @@ -74269,7 +74273,7 @@ paths: - test instances_url: https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances '304': *36 - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -74291,7 +74295,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 requestBody: required: true content: @@ -74335,7 +74339,7 @@ paths: description: Response content: application/json: - schema: *439 + schema: *440 examples: default: value: @@ -74411,7 +74415,7 @@ paths: - test instances_url: https://api.github.com/repos/octocat/hello-world/code-scanning/alerts/42/instances '400': *14 - '403': &443 + '403': &444 description: Response if the repository is archived or if GitHub Advanced Security is not enabled for this repository content: @@ -74440,13 +74444,13 @@ paths: parameters: - *340 - *341 - - *438 + - *439 responses: '200': description: Response content: application/json: - schema: &440 + schema: &441 type: object properties: status: @@ -74473,13 +74477,13 @@ paths: - description - started_at examples: - default: &441 + default: &442 value: status: success description: This fixes an XSS vulnerability by escaping the user input. started_at: '2024-02-14T12:29:18Z' - '400': &442 + '400': &443 description: Bad Request content: application/json: @@ -74490,7 +74494,7 @@ paths: message: The alert_number is not valid documentation_url: https://docs.github.com/rest/code-scanning/code-scanning#get-the-status-of-an-autofix-for-a-code-scanning-alert status: '400' - '403': *437 + '403': *438 '404': *6 '500': *54 x-github: @@ -74517,27 +74521,27 @@ paths: parameters: - *340 - *341 - - *438 + - *439 responses: '200': description: OK content: application/json: - schema: *440 + schema: *441 examples: - default: *441 + default: *442 '202': description: Accepted content: application/json: - schema: *440 + schema: *441 examples: default: value: status: pending description: started_at: '2024-02-14T12:29:18Z' - '400': *442 + '400': *443 '403': description: Response if the repository is archived, if GitHub Advanced Security is not enabled for this repository or if rate limit is exceeded @@ -74571,7 +74575,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 requestBody: required: false content: @@ -74617,8 +74621,8 @@ paths: value: target_ref: refs/heads/main sha: 178f4f6090b3fccad4a65b3e83d076a622d59652 - '400': *442 - '403': *443 + '400': *443 + '403': *444 '404': *6 '422': description: Unprocessable Entity @@ -74644,11 +74648,11 @@ paths: parameters: - *340 - *341 - - *438 + - *439 - *19 - *17 - - *444 - *445 + - *446 responses: '200': description: Response @@ -74660,9 +74664,9 @@ paths: type: object properties: ref: *428 - analysis_key: *446 - environment: *447 - category: *448 + analysis_key: *447 + environment: *448 + category: *449 state: type: - string @@ -74679,7 +74683,7 @@ paths: properties: text: type: string - location: *449 + location: *450 html_url: type: string classifications: @@ -74687,7 +74691,7 @@ paths: description: |- Classifications that have been applied to the file that triggered the alert. For example identifying it as documentation, or a generated file. - items: *450 + items: *451 examples: default: value: @@ -74724,7 +74728,7 @@ paths: end_column: 50 classifications: - source - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -74764,7 +74768,7 @@ paths: - *427 - *19 - *17 - - *445 + - *446 - name: ref in: query description: The Git reference for the analyses you want to list. The `ref` @@ -74776,7 +74780,7 @@ paths: in: query description: Filter analyses belonging to the same SARIF upload. required: false - schema: &451 + schema: &452 type: string description: An identifier for the upload. examples: @@ -74798,23 +74802,23 @@ paths: application/json: schema: type: array - items: &452 + items: &453 type: object properties: ref: *428 - commit_sha: &460 + commit_sha: &461 description: The SHA of the commit to which the analysis you are uploading relates. type: string minLength: 40 maxLength: 64 pattern: "^([0-9a-fA-F]{40}(?:[0-9a-fA-F]{24})?)$" - analysis_key: *446 + analysis_key: *447 environment: type: string description: Identifies the variable values associated with the environment in which this analysis was performed. - category: *448 + category: *449 error: type: string examples: @@ -74839,7 +74843,7 @@ paths: description: The REST API URL of the analysis resource. format: uri readOnly: true - sarif_id: *451 + sarif_id: *452 tool: *435 deletable: type: boolean @@ -74902,7 +74906,7 @@ paths: version: 1.2.0 deletable: true warning: '' - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -74952,7 +74956,7 @@ paths: description: Response content: application/json: - schema: *452 + schema: *453 examples: response: summary: application/json response @@ -75006,7 +75010,7 @@ paths: properties: - github/alertNumber: 2 - github/alertUrl: https://api.github.com/repos/monalisa/monalisa/code-scanning/alerts/2 - '403': *437 + '403': *438 '404': *6 '422': description: Response if analysis could not be processed @@ -75150,7 +75154,7 @@ paths: next_analysis_url: https://api.github.com/repos/octocat/hello-world/code-scanning/analyses/41 confirm_delete_url: https://api.github.com/repos/octocat/hello-world/code-scanning/analyses/41?confirm_delete '400': *14 - '403': *443 + '403': *444 '404': *6 '503': *115 x-github: @@ -75181,7 +75185,7 @@ paths: application/json: schema: type: array - items: &453 + items: &454 title: CodeQL Database description: A CodeQL database. type: object @@ -75293,7 +75297,7 @@ paths: updated_at: '2022-09-12T12:14:32Z' url: https://api.github.com/repos/octocat/Hello-World/code-scanning/codeql/databases/ruby commit_oid: 1927de39fefa25a9d0e64e3f540ff824a72f538c - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -75335,7 +75339,7 @@ paths: description: Response content: application/json: - schema: *453 + schema: *454 examples: default: value: @@ -75369,7 +75373,7 @@ paths: commit_oid: 1927de39fefa25a9d0e64e3f540ff824a72f538c '302': &487 description: Found - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -75402,7 +75406,7 @@ paths: responses: '204': description: Response - '403': *443 + '403': *444 '404': *6 '503': *115 x-github: @@ -75440,7 +75444,7 @@ paths: type: object additionalProperties: false properties: - language: &454 + language: &455 type: string description: The language targeted by the CodeQL query enum: @@ -75520,7 +75524,7 @@ paths: description: Variant analysis submitted for processing content: application/json: - schema: &458 + schema: &459 title: Variant Analysis description: A run of a CodeQL query against one or more repositories. type: object @@ -75530,7 +75534,7 @@ paths: description: The ID of the variant analysis. controller_repo: *66 actor: *4 - query_language: *454 + query_language: *455 query_pack_url: type: string description: The download url for the query pack. @@ -75578,7 +75582,7 @@ paths: items: type: object properties: - repository: &455 + repository: &456 title: Repository Identifier description: Repository Identifier type: object @@ -75620,7 +75624,7 @@ paths: - private - stargazers_count - updated_at - analysis_status: &459 + analysis_status: &460 type: string description: The new status of the CodeQL variant analysis repository task. @@ -75652,7 +75656,7 @@ paths: from processing. This information is only available to the user that initiated the variant analysis. properties: - access_mismatch_repos: &456 + access_mismatch_repos: &457 type: object properties: repository_count: @@ -75667,7 +75671,7 @@ paths: This list may not include all repositories that were skipped. This is only available when the repository was found and the user has access to it. - items: *455 + items: *456 required: - repository_count - repositories @@ -75690,8 +75694,8 @@ paths: required: - repository_count - repository_full_names - no_codeql_db_repos: *456 - over_limit_repos: *456 + no_codeql_db_repos: *457 + over_limit_repos: *457 required: - access_mismatch_repos - not_found_repos @@ -75707,7 +75711,7 @@ paths: examples: repositories_parameter: summary: Response for a successful variant analysis submission - value: &457 + value: &458 summary: Default response value: id: 1 @@ -75853,10 +75857,10 @@ paths: private: false repository_owners: summary: Response for a successful variant analysis submission - value: *457 + value: *458 repository_lists: summary: Response for a successful variant analysis submission - value: *457 + value: *458 '404': *6 '422': description: Unable to process variant analysis submission @@ -75897,9 +75901,9 @@ paths: description: Response content: application/json: - schema: *458 + schema: *459 examples: - default: *457 + default: *458 '404': *6 '503': *115 x-github: @@ -75957,7 +75961,7 @@ paths: type: object properties: repository: *66 - analysis_status: *459 + analysis_status: *460 artifact_size_in_bytes: type: integer description: The size of the artifact. This is only available @@ -76193,7 +76197,7 @@ paths: threat_model: remote updated_at: '2023-01-19T11:21:34Z' schedule: weekly - '403': *437 + '403': *438 '404': *6 '503': *115 x-github: @@ -76309,7 +76313,7 @@ paths: value: run_id: 42 run_url: https://api.github.com/repos/octoorg/octocat/actions/runs/42 - '403': *443 + '403': *444 '404': *6 '409': description: Response if there is already a validation run in progress with @@ -76389,7 +76393,7 @@ paths: schema: type: object properties: - commit_sha: *460 + commit_sha: *461 ref: type: string description: |- @@ -76449,7 +76453,7 @@ paths: schema: type: object properties: - id: *451 + id: *452 url: type: string description: The REST API URL for checking the status of the upload. @@ -76463,7 +76467,7 @@ paths: url: https://api.github.com/repos/octocat/hello-world/code-scanning/sarifs/47177e22-5596-11eb-80a1-c1e54ef945c6 '400': description: Bad Request if the sarif field is invalid - '403': *443 + '403': *444 '404': *6 '413': description: Payload Too Large if the sarif field is too large @@ -76535,7 +76539,7 @@ paths: value: processing_status: complete analyses_url: https://api.github.com/repos/octocat/hello-world/code-scanning/analyses?sarif_id=47177e22-5596-11eb-80a1-c1e54ef945c6 - '403': *437 + '403': *438 '404': description: Not Found if the sarif id does not match any upload '503': *115 @@ -77153,7 +77157,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '202': description: Response when the codespace creation partially failed but is being retried in the background @@ -77161,7 +77165,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '400': *14 '401': *23 '403': *27 @@ -77293,9 +77297,9 @@ paths: type: integer machines: type: array - items: *462 + items: *463 examples: - default: &714 + default: &715 value: total_count: 2 machines: @@ -77512,7 +77516,7 @@ paths: type: integer secrets: type: array - items: &466 + items: &467 title: Codespaces Secret description: Set repository secrets for GitHub Codespaces. type: object @@ -77533,7 +77537,7 @@ paths: - created_at - updated_at examples: - default: *463 + default: *464 headers: Link: *67 x-github: @@ -77563,9 +77567,9 @@ paths: description: Response content: application/json: - schema: *464 + schema: *465 examples: - default: *465 + default: *466 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -77593,9 +77597,9 @@ paths: description: Response content: application/json: - schema: *466 + schema: *467 examples: - default: *467 + default: *468 x-github: githubCloudOnly: false enabledForGitHubApps: true @@ -77738,7 +77742,7 @@ paths: application/json: schema: type: array - items: &468 + items: &469 title: Collaborator description: Collaborator type: object @@ -78290,7 +78294,7 @@ paths: user: anyOf: - type: 'null' - - *468 + - *469 required: - permission - role_name @@ -78355,7 +78359,7 @@ paths: application/json: schema: type: array - items: &469 + items: &470 title: Commit Comment description: Commit Comment type: object @@ -78413,7 +78417,7 @@ paths: - created_at - updated_at examples: - default: &474 + default: &475 value: - html_url: https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e#commitcomment-1 url: https://api.github.com/repos/octocat/Hello-World/comments/1 @@ -78480,9 +78484,9 @@ paths: description: Response content: application/json: - schema: *469 + schema: *470 examples: - default: &475 + default: &476 value: html_url: https://github.com/octocat/Hello-World/commit/6dcb09b5b57875f334f61aebed695e2e4193db5e#commitcomment-1 url: https://api.github.com/repos/octocat/Hello-World/comments/1 @@ -78563,7 +78567,7 @@ paths: description: Response content: application/json: - schema: *469 + schema: *470 examples: default: value: @@ -78665,7 +78669,7 @@ paths: application/json: schema: type: array - items: &470 + items: &471 title: Reaction description: Reactions to conversations provide a way to help people express their feelings more simply and effectively. @@ -78788,9 +78792,9 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: &471 + default: &472 value: id: 1 node_id: MDg6UmVhY3Rpb24x @@ -78819,9 +78823,9 @@ paths: description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -78958,7 +78962,7 @@ paths: application/json: schema: type: array - items: *472 + items: *473 examples: default: &606 value: @@ -79056,7 +79060,7 @@ paths: parameters: - *340 - *341 - - &473 + - &474 name: commit_sha description: The SHA of the commit. in: path @@ -79130,7 +79134,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 - *17 - *19 responses: @@ -79140,9 +79144,9 @@ paths: application/json: schema: type: array - items: *469 + items: *470 examples: - default: *474 + default: *475 headers: Link: *67 x-github: @@ -79172,7 +79176,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 requestBody: required: true content: @@ -79207,9 +79211,9 @@ paths: description: Response content: application/json: - schema: *469 + schema: *470 examples: - default: *475 + default: *476 headers: Location: example: https://api.github.com/repos/octocat/Hello-World/comments/1 @@ -79239,7 +79243,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 - *17 - *19 responses: @@ -79249,7 +79253,7 @@ paths: application/json: schema: type: array - items: *476 + items: *437 examples: default: &597 value: @@ -79807,7 +79811,7 @@ paths: description: Response content: application/json: - schema: *472 + schema: *473 examples: default: &585 value: @@ -80472,7 +80476,7 @@ paths: application/json: schema: type: array - items: &692 + items: &693 title: Status description: The status of a commit. type: object @@ -80829,8 +80833,8 @@ paths: format: uri examples: - https://github.com/octocat/Hello-World/compare/master...topic.patch - base_commit: *472 - merge_base_commit: *472 + base_commit: *473 + merge_base_commit: *473 status: type: string enum: @@ -80854,7 +80858,7 @@ paths: - 6 commits: type: array - items: *472 + items: *473 files: type: array items: *483 @@ -87367,7 +87371,7 @@ paths: parameters: - *340 - *341 - - *473 + - *474 responses: '200': description: Response @@ -88352,7 +88356,7 @@ paths: format: uri examples: - https://api.github.com/repos/octocat/Hello-World/hooks/1/deliveries - last_response: &802 + last_response: &803 title: Hook Response type: object properties: @@ -89421,7 +89425,7 @@ paths: parameters: - *340 - *341 - - &736 + - &737 name: since description: A user ID. Only return users with an ID greater than this ID. in: query @@ -90140,7 +90144,7 @@ paths: type: array items: *537 examples: - default: &729 + default: &730 value: - id: 1 repository: @@ -91442,7 +91446,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -91499,16 +91503,16 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -95455,7 +95459,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -95513,16 +95517,16 @@ paths: description: Response content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Response content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -96709,7 +96713,7 @@ paths: type: string comments: type: array - items: *469 + items: *470 - title: Timeline Assigned Issue Event description: Timeline Assigned Issue Event type: object @@ -97500,7 +97504,7 @@ paths: parameters: - *340 - *341 - - *444 + - *445 responses: '200': description: Response @@ -97748,7 +97752,7 @@ paths: description: Successful Response (The resulting merge commit) content: application/json: - schema: *472 + schema: *473 examples: default: *585 '204': @@ -99606,7 +99610,7 @@ paths: application/json: schema: type: array - items: *476 + items: *437 examples: default: *597 headers: @@ -100964,7 +100968,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -101021,16 +101025,16 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -101283,7 +101287,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '202': description: Response when the codespace creation partially failed but is being retried in the background @@ -101291,7 +101295,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '401': *23 '403': *27 '404': *6 @@ -101698,7 +101702,7 @@ paths: application/json: schema: type: array - items: *472 + items: *473 examples: default: *606 headers: @@ -102035,7 +102039,7 @@ paths: description: Response content: application/json: - schema: *476 + schema: *437 examples: default: value: @@ -102607,7 +102611,7 @@ paths: description: Response content: application/json: - schema: *476 + schema: *437 examples: default: value: @@ -105182,7 +105186,7 @@ paths: application/json: schema: type: array - items: *470 + items: *471 examples: default: *540 headers: @@ -105237,16 +105241,16 @@ paths: description: Reaction exists content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '201': description: Reaction created content: application/json: - schema: *470 + schema: *471 examples: - default: *471 + default: *472 '422': *15 x-github: githubCloudOnly: false @@ -106264,7 +106268,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 - *650 responses: '200': @@ -106416,7 +106420,7 @@ paths: anyOf: - type: 'null' - *4 - metadata: &821 + metadata: &822 type: array description: A list of metadata key/value pairs associated with the secret scanning alert. @@ -106491,7 +106495,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 requestBody: required: true content: @@ -106652,7 +106656,7 @@ paths: parameters: - *340 - *341 - - *438 + - *439 - *19 - *17 responses: @@ -106663,7 +106667,7 @@ paths: schema: type: array description: List of locations where the secret was detected - items: &823 + items: &824 type: object properties: type: @@ -108264,6 +108268,1036 @@ paths: enabledForGitHubApps: true category: security-advisories subcategory: repository-advisories + "/repos/{owner}/{repo}/stacks": + get: + summary: List pull request stacks + description: Lists pull request stacks in a repository. + tags: + - pulls + operationId: pull-request-stacks/list + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#list-pull-request-stacks + parameters: + - *340 + - *341 + - name: pull_request + description: Filter to the stack containing this repository pull request number. + in: query + required: false + schema: + type: integer + - *17 + - *19 + responses: + '200': + description: Response + content: + application/json: + schema: + type: array + items: + title: Pull Request Stack Minimal + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: + type: object + required: + - number + - state + - draft + - merged_at + - head + properties: + number: + type: integer + state: + type: string + enum: + - open + - closed + draft: + type: boolean + merged_at: + type: + - string + - 'null' + format: date-time + head: + type: object + required: + - ref + - sha + properties: + ref: + type: string + sha: + type: string + examples: + default: + value: + - id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + pull_requests: + - number: 101 + state: open + draft: false + merged_at: + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + - number: 102 + state: open + draft: false + merged_at: + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + open: true + created_at: '2026-04-15T10:00:00Z' + '404': *6 + '422': *15 + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + post: + summary: Create a pull request stack + description: |- + Creates a stack from an ordered list of pull request numbers. Provide the pull + request numbers from the bottom of the stack to the top. Each pull request's + base ref must match the previous pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/create + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + parameters: + - *340 + - *341 + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers forming the + stack from bottom to top. + items: + type: integer + minItems: 2 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 101 + - 102 + - 103 + responses: + '201': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: &691 + title: Pull Request Stack Pull Request + type: object + allOf: + - *86 + - type: object + required: + - node_id + - title + - state + - merged_at + - draft + - html_url + - user + properties: + node_id: + type: string + title: + type: string + state: + type: string + enum: + - open + - closed + merged_at: + type: + - string + - 'null' + format: date-time + draft: + type: boolean + html_url: + type: string + format: uri + user: + anyOf: + - type: 'null' + - *4 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't form a + valid stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't form a linear stack + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#create-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}": + get: + summary: Get a pull request stack + description: Gets a pull request stack by providing its stack number. + tags: + - pulls + operationId: pull-request-stacks/get + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#get-a-pull-request-stack + parameters: + - *340 + - *341 + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: *691 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/add": + post: + summary: Add pull requests to a pull request stack + description: |- + Appends an ordered list of pull request numbers onto the top of an existing + stack. Provide only the pull requests you want to add, from the current top of + the stack upward. The first new pull request's base ref must match the current + top pull request's head ref. + tags: + - pulls + operationId: pull-request-stacks/add + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + parameters: + - *340 + - *341 + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - pull_requests + properties: + pull_requests: + type: array + description: An ordered list of pull request numbers to append to + the stack, from the current top upward. + items: + type: integer + minItems: 1 + maxItems: 100 + examples: + default: + value: + pull_requests: + - 104 + - 102 + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: *691 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + - id: 100002 + node_id: PR_kwDOABCDEF4AAAAB + title: Add user API + state: open + merged_at: + draft: true + html_url: https://github.com/octocat/hello-world/pull/102 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 102 + url: https://api.github.com/repos/octocat/hello-world/pulls/102 + head: + ref: user-api + sha: bbb2222bbb2222bbb2222bbb2222bbb2222bbb22 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: *3 + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the request references pull requests that + don't exist in the repository, or when the pull requests can't be appended + to the stack. + content: + application/json: + schema: + title: Validation Error + description: Validation Error + type: object + required: + - message + - documentation_url + properties: + message: + type: string + documentation_url: + type: string + errors: + type: array + items: + type: object + required: + - code + properties: + resource: + type: string + field: + type: string + message: + type: string + code: + type: string + index: + type: integer + value: + oneOf: + - type: + - string + - 'null' + - type: + - integer + - 'null' + - type: + - array + - 'null' + items: + oneOf: + - type: string + - type: integer + examples: + missing_pull_requests: + summary: One or more pull request numbers don't exist in the repository + value: + message: Validation Failed + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + errors: + - resource: Stack + field: pull_requests + code: missing + value: + - 123 + not_a_linear_stack: + summary: The pull requests don't continue the stack linearly + value: + message: Pull requests must form a stack, where each PR's base + ref is the previous PR's head ref + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + already_stacked: + summary: A pull request already belongs to a stack + value: + message: 'Pull request #123 is already part of a stack' + documentation_url: https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks + "/repos/{owner}/{repo}/stacks/{stack_number}/unstack": + post: + summary: Remove pull requests from a pull request stack + description: |- + Removes the unmerged pull requests from a stack. Pull requests that cannot be + unstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated + stack is returned with a `200`. When no pull requests remain, the stack is + dissolved and a `204` is returned. + tags: + - pulls + operationId: pull-request-stacks/unstack + externalDocs: + description: API method documentation + url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + parameters: + - *340 + - *341 + - name: stack_number + description: The number that identifies the pull request stack. + in: path + required: true + schema: + type: integer + responses: + '200': + description: Response + content: + application/json: + schema: + type: object + required: + - id + - number + - node_id + - url + - base + - open + - created_at + - pull_requests + properties: + id: + type: integer + number: + type: integer + node_id: + type: string + url: + type: string + format: uri + base: + type: object + required: + - ref + properties: + ref: + type: string + open: + type: boolean + description: Whether the stack has any open pull request. False + when all pull requests are merged or closed. + created_at: + type: string + format: date-time + pull_requests: + type: array + items: *691 + examples: + default: + value: + id: 9876543 + number: 42 + node_id: S_kwDOABCDEF4AAAAA + url: https://api.github.com/repos/octocat/hello-world/stacks/42 + base: + ref: main + open: true + created_at: '2026-04-15T10:00:00Z' + pull_requests: + - id: 100001 + node_id: PR_kwDOABCDEF4AAAAA + title: Add user model + state: open + merged_at: + draft: false + html_url: https://github.com/octocat/hello-world/pull/101 + user: + login: octocat + id: 1 + node_id: MDQ6VXNlcjE= + avatar_url: https://github.com/images/error/octocat_happy.gif + gravatar_id: '' + url: https://api.github.com/users/octocat + html_url: https://github.com/octocat + followers_url: https://api.github.com/users/octocat/followers + following_url: https://api.github.com/users/octocat/following{/other_user} + gists_url: https://api.github.com/users/octocat/gists{/gist_id} + starred_url: https://api.github.com/users/octocat/starred{/owner}{/repo} + subscriptions_url: https://api.github.com/users/octocat/subscriptions + organizations_url: https://api.github.com/users/octocat/orgs + repos_url: https://api.github.com/users/octocat/repos + events_url: https://api.github.com/users/octocat/events{/privacy} + received_events_url: https://api.github.com/users/octocat/received_events + type: User + site_admin: false + user_view_type: public + number: 101 + url: https://api.github.com/repos/octocat/hello-world/pulls/101 + head: + ref: user-model + sha: aaa1111aaa1111aaa1111aaa1111aaa1111aaa11 + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + base: + ref: main + sha: 6dcb09b5b57875f334f61aebed695e2e4193db5e + repo: + id: 1296269 + url: https://api.github.com/repos/octocat/hello-world + name: hello-world + '404': *6 + '409': + description: Conflict. Returned when the stack is being modified by another + request. + content: + application/json: + schema: *3 + examples: + being_modified: + summary: Another request is currently modifying the stack + value: + message: Stack is currently being modified + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + status: '409' + '422': + description: |- + Validation failed. Returned when the stack can't be unstacked because every + pull request in it is locked and cannot be removed. + content: + application/json: + schema: *125 + examples: + cannot_be_removed: + summary: Every pull request in the stack is locked and can't be + removed + value: + message: Pull requests in this stack cannot be removed + documentation_url: https://docs.github.com/rest/pulls/stacks#remove-pull-requests-from-a-pull-request-stack + '204': *58 + x-github: + githubCloudOnly: false + enabledForGitHubApps: true + category: pulls + subcategory: stacks "/repos/{owner}/{repo}/stargazers": get: summary: List stargazers @@ -108387,7 +109421,7 @@ paths: application/json: schema: type: array - items: &691 + items: &692 title: Code Frequency Stat description: Code Frequency Stat type: array @@ -108760,7 +109794,7 @@ paths: application/json: schema: type: array - items: *691 + items: *692 examples: default: value: @@ -108850,7 +109884,7 @@ paths: description: Response content: application/json: - schema: *692 + schema: *693 examples: default: value: @@ -108944,7 +109978,7 @@ paths: description: if you subscribe to the repository content: application/json: - schema: &693 + schema: &694 title: Repository Invitation description: Repository invitations let you manage who you collaborate with. @@ -109044,7 +110078,7 @@ paths: description: Response content: application/json: - schema: *693 + schema: *694 examples: default: value: @@ -109254,7 +110288,7 @@ paths: description: Response content: application/json: - schema: &694 + schema: &695 title: Topic description: A topic aggregates entities that are related to a subject. type: object @@ -109266,7 +110300,7 @@ paths: required: - names examples: - default: &695 + default: &696 value: names: - octocat @@ -109321,9 +110355,9 @@ paths: description: Response content: application/json: - schema: *694 + schema: *695 examples: - default: *695 + default: *696 '404': *6 '422': *7 x-github: @@ -109346,7 +110380,7 @@ paths: parameters: - *340 - *341 - - &696 + - &697 name: per description: The time frame to display results for. in: query @@ -109377,7 +110411,7 @@ paths: - 128 clones: type: array - items: &697 + items: &698 title: Traffic type: object properties: @@ -109625,7 +110659,7 @@ paths: parameters: - *340 - *341 - - *696 + - *697 responses: '200': description: Response @@ -109646,7 +110680,7 @@ paths: - 3782 views: type: array - items: *697 + items: *698 required: - uniques - count @@ -110425,7 +111459,7 @@ paths: examples: - 73..77 - 77..78 - text_matches: &698 + text_matches: &699 title: Search Result Text Matches type: array items: @@ -110588,7 +111622,7 @@ paths: enum: - author-date - committer-date - - &699 + - &700 name: order description: Determines whether the first search result returned is the highest number of matches (`desc`) or lowest number of matches (`asc`). This parameter @@ -110708,7 +111742,7 @@ paths: type: number node_id: type: string - text_matches: *698 + text_matches: *699 required: - sha - node_id @@ -110900,7 +111934,7 @@ paths: - interactions - created - updated - - *699 + - *700 - *17 - *19 - name: advanced_search @@ -111014,8 +112048,8 @@ paths: type: - string - 'null' - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -111046,7 +112080,7 @@ paths: - string - 'null' format: date-time - text_matches: *698 + text_matches: *699 pull_request: type: object properties: @@ -111356,7 +112390,7 @@ paths: enum: - created - updated - - *699 + - *700 - *17 - *19 responses: @@ -111401,7 +112435,7 @@ paths: - 'null' score: type: number - text_matches: *698 + text_matches: *699 required: - id - node_id @@ -111486,7 +112520,7 @@ paths: - forks - help-wanted-issues - updated - - *699 + - *700 - *17 - *19 responses: @@ -111732,7 +112766,7 @@ paths: - admin - pull - push - text_matches: *698 + text_matches: *699 temp_clone_token: type: string allow_merge_commit: @@ -112040,7 +113074,7 @@ paths: - string - 'null' format: uri - text_matches: *698 + text_matches: *699 related: type: - array @@ -112233,7 +113267,7 @@ paths: - followers - repositories - joined - - *699 + - *700 - *17 - *19 responses: @@ -112343,7 +113377,7 @@ paths: type: - boolean - 'null' - text_matches: *698 + text_matches: *699 blog: type: - string @@ -112425,7 +113459,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#get-a-team-legacy parameters: - - &702 + - &703 name: team_id description: The unique identifier of the team. in: path @@ -112466,7 +113500,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#update-a-team-legacy parameters: - - *702 + - *703 requestBody: required: true content: @@ -112567,7 +113601,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#delete-a-team-legacy parameters: - - *702 + - *703 responses: '204': description: Response @@ -112596,7 +113630,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#list-pending-team-invitations-legacy parameters: - - *702 + - *703 - *17 - *19 responses: @@ -112636,7 +113670,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#list-team-members-legacy parameters: - - *702 + - *703 - name: role description: Filters members returned by their role in the team. in: query @@ -112657,9 +113691,9 @@ paths: application/json: schema: type: array - items: *703 + items: *704 examples: - default: *704 + default: *705 headers: Link: *67 '404': *6 @@ -112687,7 +113721,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#get-team-member-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -112724,7 +113758,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#add-team-member-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -112764,7 +113798,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#remove-team-member-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -112801,7 +113835,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#get-team-membership-for-a-user-legacy parameters: - - *702 + - *703 - *71 responses: '200': @@ -112810,7 +113844,7 @@ paths: application/json: schema: *339 examples: - response-if-user-is-a-team-maintainer: *705 + response-if-user-is-a-team-maintainer: *706 '404': *6 x-github: githubCloudOnly: false @@ -112843,7 +113877,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#add-or-update-team-membership-for-a-user-legacy parameters: - - *702 + - *703 - *71 requestBody: required: false @@ -112871,7 +113905,7 @@ paths: application/json: schema: *339 examples: - response-if-users-membership-with-team-is-now-pending: *706 + response-if-users-membership-with-team-is-now-pending: *707 '403': description: Forbidden if team synchronization is set up '422': @@ -112905,7 +113939,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/members#remove-team-membership-for-a-user-legacy parameters: - - *702 + - *703 - *71 responses: '204': @@ -112933,7 +113967,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#list-team-repositories-legacy parameters: - - *702 + - *703 - *17 - *19 responses: @@ -112975,7 +114009,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#check-team-permissions-for-a-repository-legacy parameters: - - *702 + - *703 - *340 - *341 responses: @@ -112983,7 +114017,7 @@ paths: description: Alternative response with extra repository information content: application/json: - schema: *707 + schema: *708 examples: alternative-response-with-extra-repository-information: value: @@ -113140,7 +114174,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#add-or-update-team-repository-permissions-legacy parameters: - - *702 + - *703 - *340 - *341 requestBody: @@ -113192,7 +114226,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#remove-a-repository-from-a-team-legacy parameters: - - *702 + - *703 - *340 - *341 responses: @@ -113219,7 +114253,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/teams/teams#list-child-teams-legacy parameters: - - *702 + - *703 - *17 - *19 responses: @@ -113231,7 +114265,7 @@ paths: type: array items: *201 examples: - response-if-child-teams-exist: *708 + response-if-child-teams-exist: *709 headers: Link: *67 '404': *6 @@ -113264,7 +114298,7 @@ paths: application/json: schema: oneOf: - - &710 + - &711 title: Private User description: Private User type: object @@ -113514,7 +114548,7 @@ paths: - private_gists - total_private_repos - two_factor_authentication - - *709 + - *710 examples: response-with-public-and-private-profile-information: summary: Response with public and private profile information @@ -113674,7 +114708,7 @@ paths: description: Response content: application/json: - schema: *710 + schema: *711 examples: default: value: @@ -114020,7 +115054,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '202': description: Response when the codespace creation partially failed but is being retried in the background @@ -114028,7 +115062,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '401': *23 '403': *27 '404': *6 @@ -114072,7 +115106,7 @@ paths: type: integer secrets: type: array - items: &711 + items: &712 title: Codespaces Secret description: Secrets for a GitHub Codespace. type: object @@ -114114,7 +115148,7 @@ paths: - visibility - selected_repositories_url examples: - default: *463 + default: *464 headers: Link: *67 x-github: @@ -114192,7 +115226,7 @@ paths: description: Response content: application/json: - schema: *711 + schema: *712 examples: default: value: @@ -114490,7 +115524,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '304': *36 '500': *54 '401': *23 @@ -114548,7 +115582,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '401': *23 '403': *27 '404': *6 @@ -114605,7 +115639,7 @@ paths: description: Response content: application/json: - schema: &712 + schema: &713 type: object title: Fetches information about an export of a codespace. description: An export of a codespace. Also, latest export details @@ -114658,7 +115692,7 @@ paths: examples: - https://github.com/octocat/hello-world/tree/:branch examples: - default: &713 + default: &714 value: state: succeeded completed_at: '2022-01-01T14:59:22Z' @@ -114703,9 +115737,9 @@ paths: description: Response content: application/json: - schema: *712 + schema: *713 examples: - default: *713 + default: *714 '404': *6 x-github: githubCloudOnly: false @@ -114742,9 +115776,9 @@ paths: type: integer machines: type: array - items: *462 + items: *463 examples: - default: *714 + default: *715 '304': *36 '500': *54 '401': *23 @@ -114833,7 +115867,7 @@ paths: machine: anyOf: - type: 'null' - - *462 + - *463 devcontainer_path: description: Path to devcontainer.json from repo root used to create Codespace. @@ -115638,7 +116672,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '304': *36 '500': *54 '400': *14 @@ -115678,7 +116712,7 @@ paths: application/json: schema: *251 examples: - default: *461 + default: *462 '500': *54 '401': *23 '403': *27 @@ -115710,7 +116744,7 @@ paths: type: array items: *263 examples: - default: &726 + default: &727 value: - id: 197 name: hello_docker @@ -115811,7 +116845,7 @@ paths: application/json: schema: type: array - items: &715 + items: &716 title: Email description: Email type: object @@ -115881,9 +116915,9 @@ paths: application/json: schema: type: array - items: *715 + items: *716 examples: - default: &728 + default: &729 value: - email: octocat@github.com verified: true @@ -115960,7 +116994,7 @@ paths: application/json: schema: type: array - items: *715 + items: *716 examples: default: value: @@ -116218,7 +117252,7 @@ paths: application/json: schema: type: array - items: &716 + items: &717 title: GPG Key description: A unique encryption key type: object @@ -116363,7 +117397,7 @@ paths: - subkeys - revoked examples: - default: &745 + default: &746 value: - id: 3 name: Octocat's GPG Key @@ -116448,9 +117482,9 @@ paths: description: Response content: application/json: - schema: *716 + schema: *717 examples: - default: &717 + default: &718 value: id: 3 name: Octocat's GPG Key @@ -116507,7 +117541,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/gpg-keys#get-a-gpg-key-for-the-authenticated-user parameters: - - &718 + - &719 name: gpg_key_id description: The unique identifier of the GPG key. in: path @@ -116519,9 +117553,9 @@ paths: description: Response content: application/json: - schema: *716 + schema: *717 examples: - default: *717 + default: *718 '404': *6 '304': *36 '403': *27 @@ -116544,7 +117578,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/gpg-keys#delete-a-gpg-key-for-the-authenticated-user parameters: - - *718 + - *719 responses: '204': description: Response @@ -117011,7 +118045,7 @@ paths: application/json: schema: type: array - items: &719 + items: &720 title: Key description: Key type: object @@ -117114,9 +118148,9 @@ paths: description: Response content: application/json: - schema: *719 + schema: *720 examples: - default: &720 + default: &721 value: key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 id: 2 @@ -117155,9 +118189,9 @@ paths: description: Response content: application/json: - schema: *719 + schema: *720 examples: - default: *720 + default: *721 '404': *6 '304': *36 '403': *27 @@ -117213,7 +118247,7 @@ paths: application/json: schema: type: array - items: &721 + items: &722 title: User Marketplace Purchase description: User Marketplace Purchase type: object @@ -117292,7 +118326,7 @@ paths: - account - plan examples: - default: &722 + default: &723 value: - billing_cycle: monthly next_billing_date: '2017-11-11T00:00:00Z' @@ -117354,9 +118388,9 @@ paths: application/json: schema: type: array - items: *721 + items: *722 examples: - default: *722 + default: *723 headers: Link: *67 '304': *36 @@ -117599,7 +118633,7 @@ paths: application/json: schema: *255 examples: - default: &723 + default: &724 value: url: https://api.github.com/orgs/octocat/memberships/defunkt state: active @@ -117648,7 +118682,7 @@ paths: application/json: schema: *255 examples: - default: *723 + default: *724 '403': *27 '404': *6 '422': *15 @@ -118382,7 +119416,7 @@ paths: url: https://docs.github.com/rest/migrations/users#unlock-a-user-repository parameters: - *258 - - *724 + - *725 responses: '204': description: Response @@ -118515,7 +119549,7 @@ paths: - docker - nuget - container - - *725 + - *726 - *19 - *17 responses: @@ -118527,8 +119561,8 @@ paths: type: array items: *263 examples: - default: *726 - '400': *727 + default: *727 + '400': *728 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -118557,7 +119591,7 @@ paths: application/json: schema: *263 examples: - default: &746 + default: &747 value: id: 40201 name: octo-name @@ -118919,9 +119953,9 @@ paths: application/json: schema: type: array - items: *715 + items: *716 examples: - default: *728 + default: *729 headers: Link: *67 '304': *36 @@ -119034,7 +120068,7 @@ paths: type: array items: *79 examples: - default: &735 + default: &736 summary: Default response value: - id: 1296269 @@ -119400,7 +120434,7 @@ paths: type: array items: *537 examples: - default: *729 + default: *730 headers: Link: *67 '304': *36 @@ -119485,7 +120519,7 @@ paths: application/json: schema: type: array - items: &730 + items: &731 title: Social account description: Social media account type: object @@ -119502,7 +120536,7 @@ paths: - provider - url examples: - default: &731 + default: &732 value: - provider: twitter url: https://twitter.com/github @@ -119565,9 +120599,9 @@ paths: application/json: schema: type: array - items: *730 + items: *731 examples: - default: *731 + default: *732 '422': *15 '304': *36 '404': *6 @@ -119655,7 +120689,7 @@ paths: application/json: schema: type: array - items: &732 + items: &733 title: SSH Signing Key description: A public SSH key used to sign Git commits type: object @@ -119675,7 +120709,7 @@ paths: - title - created_at examples: - default: &763 + default: &764 value: - id: 2 key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 @@ -119740,9 +120774,9 @@ paths: description: Response content: application/json: - schema: *732 + schema: *733 examples: - default: &733 + default: &734 value: id: 2 key: 2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234 @@ -119772,7 +120806,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/ssh-signing-keys#get-an-ssh-signing-key-for-the-authenticated-user parameters: - - &734 + - &735 name: ssh_signing_key_id description: The unique identifier of the SSH signing key. in: path @@ -119784,9 +120818,9 @@ paths: description: Response content: application/json: - schema: *732 + schema: *733 examples: - default: *733 + default: *734 '404': *6 '304': *36 '403': *27 @@ -119809,7 +120843,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/ssh-signing-keys#delete-an-ssh-signing-key-for-the-authenticated-user parameters: - - *734 + - *735 responses: '204': description: Response @@ -119838,7 +120872,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/activity/starring#list-repositories-starred-by-the-authenticated-user parameters: - - &764 + - &765 name: sort description: The property to sort the results by. `created` means when the repository was starred. `updated` means when the repository was last pushed @@ -119863,11 +120897,11 @@ paths: type: array items: *79 examples: - default-response: *735 + default-response: *736 application/vnd.github.v3.star+json: schema: type: array - items: &765 + items: &766 title: Starred Repository description: Starred Repository type: object @@ -120236,10 +121270,10 @@ paths: application/json: schema: oneOf: + - *711 - *710 - - *709 examples: - default-response: &739 + default-response: &740 summary: Default response value: login: octocat @@ -120274,7 +121308,7 @@ paths: following: 0 created_at: '2008-01-14T04:33:35Z' updated_at: '2008-01-14T04:33:35Z' - response-with-git-hub-plan-information: &740 + response-with-git-hub-plan-information: &741 summary: Response with GitHub plan information value: login: octocat @@ -120331,7 +121365,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/projects/drafts#create-draft-item-for-user-owned-project parameters: - - &737 + - &738 name: user_id description: The unique identifier of the user. in: path @@ -120397,7 +121431,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/users/users#list-users parameters: - - *736 + - *737 - *17 responses: '200': @@ -120432,7 +121466,7 @@ paths: description: API method documentation url: https://docs.github.com/rest/projects/views#create-a-view-for-a-user-owned-project parameters: - - *737 + - *738 - *281 requestBody: required: true @@ -120507,7 +121541,7 @@ paths: description: Response for creating a view in a user-owned project. content: application/json: - schema: *738 + schema: *739 examples: table_view: summary: Response for creating a table view @@ -120559,11 +121593,11 @@ paths: application/json: schema: oneOf: + - *711 - *710 - - *709 examples: - default-response: *739 - response-with-git-hub-plan-information: *740 + default-response: *740 + response-with-git-hub-plan-information: *741 '404': *6 x-github: githubCloudOnly: false @@ -120613,8 +121647,8 @@ paths: required: - subject_digests examples: - default: *741 - withPredicateType: *742 + default: *742 + withPredicateType: *743 responses: '200': description: Response @@ -120668,7 +121702,7 @@ paths: description: The cursor to the previous page. description: Information about the current page. examples: - default: *743 + default: *744 x-github: githubCloudOnly: false enabledForGitHubApps: true @@ -121186,7 +122220,7 @@ paths: application/json: schema: *197 examples: - default: &744 + default: &745 summary: Example response for a user copilot space value: id: 42 @@ -121287,7 +122321,7 @@ paths: application/json: schema: *197 examples: - default: *744 + default: *745 '403': *27 '404': *6 x-github: @@ -121413,7 +122447,7 @@ paths: application/json: schema: *197 examples: - default: *744 + default: *745 '403': *27 '404': *6 '422': *15 @@ -122181,7 +123215,7 @@ paths: type: array items: *263 examples: - default: *726 + default: *727 '403': *27 '401': *23 x-github: @@ -122565,9 +123599,9 @@ paths: application/json: schema: type: array - items: *716 + items: *717 examples: - default: *745 + default: *746 headers: Link: *67 x-github: @@ -122796,7 +123830,7 @@ paths: - docker - nuget - container - - *725 + - *726 - *71 - *19 - *17 @@ -122809,10 +123843,10 @@ paths: type: array items: *263 examples: - default: *726 + default: *727 '403': *27 '401': *23 - '400': *727 + '400': *728 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -122842,7 +123876,7 @@ paths: application/json: schema: *263 examples: - default: *746 + default: *747 x-github: githubCloudOnly: false enabledForGitHubApps: false @@ -123191,7 +124225,7 @@ paths: type: array items: *284 examples: - default: *747 + default: *748 headers: Link: *67 '304': *36 @@ -123251,7 +124285,7 @@ paths: description: The options available for single select fields. At least one option must be provided when creating a single select field. - items: *748 + items: *749 required: - name - data_type @@ -123267,7 +124301,7 @@ paths: description: The field's data type. enum: - iteration - iteration_configuration: *749 + iteration_configuration: *750 required: - name - data_type @@ -123289,8 +124323,8 @@ paths: value: name: Due date data_type: date - single_select_field: *750 - iteration_field: *751 + single_select_field: *751 + iteration_field: *752 responses: '201': description: Response @@ -123298,11 +124332,11 @@ paths: application/json: schema: *284 examples: - text_field: *752 - number_field: *753 - date_field: *754 - single_select_field: *755 - iteration_field: *756 + text_field: *753 + number_field: *754 + date_field: *755 + single_select_field: *756 + iteration_field: *757 '304': *36 '403': *27 '401': *23 @@ -123324,7 +124358,7 @@ paths: url: https://docs.github.com/rest/projects/fields#get-project-field-for-user parameters: - *281 - - *757 + - *758 - *71 responses: '200': @@ -123333,7 +124367,7 @@ paths: application/json: schema: *284 examples: - default: *758 + default: *759 headers: Link: *67 '304': *36 @@ -123690,7 +124724,7 @@ paths: parameters: - *281 - *71 - - *759 + - *760 - name: fields description: |- Limit results to specific fields, by their IDs. If not specified, the @@ -124229,7 +125263,7 @@ paths: parameters: - *71 - *117 - - *760 + - *761 - *119 responses: '200': @@ -124328,9 +125362,9 @@ paths: - *117 - *118 - *119 - - *761 - - *122 - *762 + - *122 + - *763 responses: '200': description: Response when getting a billing usage summary @@ -124464,9 +125498,9 @@ paths: application/json: schema: type: array - items: *730 + items: *731 examples: - default: *731 + default: *732 headers: Link: *67 x-github: @@ -124496,9 +125530,9 @@ paths: application/json: schema: type: array - items: *732 + items: *733 examples: - default: *763 + default: *764 headers: Link: *67 x-github: @@ -124523,7 +125557,7 @@ paths: url: https://docs.github.com/rest/activity/starring#list-repositories-starred-by-a-user parameters: - *71 - - *764 + - *765 - *61 - *17 - *19 @@ -124535,11 +125569,11 @@ paths: schema: anyOf: - type: array - items: *765 + items: *766 - type: array items: *79 examples: - default-response: *735 + default-response: *736 headers: Link: *67 x-github: @@ -124699,7 +125733,7 @@ webhooks: type: string enum: - disabled - enterprise: &766 + enterprise: &767 title: Enterprise description: |- An enterprise on GitHub. Webhook payloads contain the `enterprise` property when the webhook is configured @@ -124768,7 +125802,7 @@ webhooks: - created_at - updated_at - avatar_url - installation: &767 + installation: &768 title: Simple Installation description: |- The GitHub App installation. Webhook payloads contain the `installation` property when the event is configured @@ -124789,7 +125823,7 @@ webhooks: required: - id - node_id - organization: &768 + organization: &769 title: Organization Simple description: |- A GitHub organization. Webhook payloads contain the `organization` property when the webhook is configured for an @@ -124862,7 +125896,7 @@ webhooks: - public_members_url - avatar_url - description - repository: &769 + repository: &770 title: Repository description: |- The repository on GitHub where the event occurred. Webhook payloads contain the `repository` property @@ -125802,10 +126836,10 @@ webhooks: type: string enum: - enabled - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -125881,11 +126915,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - rule: &770 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + rule: &771 title: branch protection rule description: The branch protection rule. Includes a `name` and all the [branch protection settings](https://docs.github.com/github/administering-a-repository/defining-the-mergeability-of-pull-requests/about-protected-branches#about-branch-protection-settings) @@ -126108,11 +127142,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - rule: *770 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + rule: *771 sender: *4 required: - action @@ -126300,11 +127334,11 @@ webhooks: - everyone required: - from - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - rule: *770 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + rule: *771 sender: *4 required: - action @@ -126388,7 +127422,7 @@ webhooks: type: string enum: - completed - check_run: &772 + check_run: &773 title: CheckRun description: A check performed on the code of a given code change type: object @@ -126498,7 +127532,7 @@ webhooks: - examples: - neutral - deployment: *771 + deployment: *772 details_url: type: string examples: @@ -126596,10 +127630,10 @@ webhooks: - output - app - pull_requests - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 sender: *4 required: - check_run @@ -126990,11 +128024,11 @@ webhooks: type: string enum: - created - check_run: *772 - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + check_run: *773 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 sender: *4 required: - check_run @@ -127388,11 +128422,11 @@ webhooks: type: string enum: - requested_action - check_run: *772 - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + check_run: *773 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 requested_action: description: The action requested by the user. type: object @@ -127795,11 +128829,11 @@ webhooks: type: string enum: - rerequested - check_run: *772 - installation: *767 - enterprise: *766 - organization: *768 - repository: *769 + check_run: *773 + installation: *768 + enterprise: *767 + organization: *769 + repository: *770 sender: *4 required: - check_run @@ -128784,10 +129818,10 @@ webhooks: - latest_check_runs_count - check_runs_url - head_commit - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -129501,10 +130535,10 @@ webhooks: - latest_check_runs_count - check_runs_url - head_commit - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -130212,10 +131246,10 @@ webhooks: - latest_check_runs_count - check_runs_url - head_commit - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -130536,20 +131570,20 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: &773 + commit_oid: &774 description: The commit SHA of the code scanning alert. When the action is `reopened_by_user` or `closed_by_user`, the event was triggered by the `sender` and this value will be empty. type: string - enterprise: *766 - installation: *767 - organization: *768 - ref: &774 + enterprise: *767 + installation: *768 + organization: *769 + ref: &775 description: The Git reference of the code scanning alert. When the action is `reopened_by_user` or `closed_by_user`, the event was triggered by the `sender` and this value will be empty. type: string - repository: *769 + repository: *770 sender: *4 required: - action @@ -130957,12 +131991,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -131245,12 +132279,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -131596,12 +132630,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -131891,9 +132925,9 @@ webhooks: type: - string - 'null' - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 ref: description: The Git reference of the code scanning alert. When the action is `reopened_by_user` or `closed_by_user`, the event @@ -131901,7 +132935,7 @@ webhooks: type: - string - 'null' - repository: *769 + repository: *770 sender: *4 required: - action @@ -132147,12 +133181,12 @@ webhooks: - dismissed_reason - rule - tool - commit_oid: *773 - enterprise: *766 - installation: *767 - organization: *768 - ref: *774 - repository: *769 + commit_oid: *774 + enterprise: *767 + installation: *768 + organization: *769 + ref: *775 + repository: *770 sender: *4 required: - action @@ -132473,10 +133507,10 @@ webhooks: - dismissed_reason - rule - tool - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -132736,10 +133770,10 @@ webhooks: - updated_at - author_association - body - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -132820,18 +133854,18 @@ webhooks: type: - string - 'null' - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 master_branch: description: The name of the repository's default branch (usually `main`). type: string - organization: *768 - pusher_type: &775 + organization: *769 + pusher_type: &776 description: The pusher type for the event. Can be either `user` or a deploy key. type: string - ref: &776 + ref: &777 description: The [`git ref`](https://docs.github.com/rest/git/refs#get-a-reference) resource. type: string @@ -132841,7 +133875,7 @@ webhooks: enum: - tag - branch - repository: *769 + repository: *770 sender: *4 required: - ref @@ -132924,9 +133958,9 @@ webhooks: enum: - created definition: *292 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -133011,9 +134045,9 @@ webhooks: description: The name of the property that was deleted. required: - property_name - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -133091,9 +134125,9 @@ webhooks: enum: - promote_to_enterprise definition: *292 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -133171,9 +134205,9 @@ webhooks: enum: - updated definition: *292 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -133250,10 +134284,10 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - repository: *769 - organization: *768 + enterprise: *767 + installation: *768 + repository: *770 + organization: *769 sender: *4 new_property_values: type: array @@ -133338,18 +134372,18 @@ webhooks: title: delete event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - pusher_type: *775 - ref: *776 + enterprise: *767 + installation: *768 + organization: *769 + pusher_type: *776 + ref: *777 ref_type: description: The type of Git ref object deleted in the repository. type: string enum: - tag - branch - repository: *769 + repository: *770 sender: *4 required: - ref @@ -133430,10 +134464,10 @@ webhooks: enum: - assignees_changed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -133514,10 +134548,10 @@ webhooks: enum: - auto_dismissed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -133599,10 +134633,10 @@ webhooks: enum: - auto_reopened alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -133684,10 +134718,10 @@ webhooks: enum: - created alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -133767,10 +134801,10 @@ webhooks: enum: - dismissed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -133850,10 +134884,10 @@ webhooks: enum: - fixed alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -133934,10 +134968,10 @@ webhooks: enum: - reintroduced alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -134017,10 +135051,10 @@ webhooks: enum: - reopened alert: *493 - installation: *767 - organization: *768 - enterprise: *766 - repository: *769 + installation: *768 + organization: *769 + enterprise: *767 + repository: *770 sender: *4 required: - action @@ -134097,9 +135131,9 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - key: &777 + enterprise: *767 + installation: *768 + key: &778 description: The [`deploy key`](https://docs.github.com/rest/deploy-keys/deploy-keys#get-a-deploy-key) resource. type: object @@ -134137,8 +135171,8 @@ webhooks: - verified - created_at - read_only - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -134215,11 +135249,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - key: *777 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + key: *778 + organization: *769 + repository: *770 sender: *4 required: - action @@ -134786,12 +135820,12 @@ webhooks: - updated_at - statuses_url - repository_url - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: &781 + workflow: &782 title: Workflow type: - object @@ -135546,9 +136580,9 @@ webhooks: pull_requests: type: array items: *602 - repository: *769 - organization: *768 - installation: *767 + repository: *770 + organization: *769 + installation: *768 sender: *4 responses: '200': @@ -135619,7 +136653,7 @@ webhooks: type: string enum: - approved - approver: &778 + approver: &779 type: object properties: avatar_url: @@ -135662,11 +136696,11 @@ webhooks: type: string comment: type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - reviewers: &779 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + reviewers: &780 type: array items: type: object @@ -135747,7 +136781,7 @@ webhooks: sender: *4 since: type: string - workflow_job_run: &780 + workflow_job_run: &781 type: object properties: conclusion: @@ -136493,18 +137527,18 @@ webhooks: type: string enum: - rejected - approver: *778 + approver: *779 comment: type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - reviewers: *779 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + reviewers: *780 sender: *4 since: type: string - workflow_job_run: *780 + workflow_job_run: *781 workflow_job_runs: type: array items: @@ -137221,13 +138255,13 @@ webhooks: type: string enum: - requested - enterprise: *766 + enterprise: *767 environment: type: string - installation: *767 - organization: *768 - repository: *769 - requestor: &786 + installation: *768 + organization: *769 + repository: *770 + requestor: &787 title: User type: - object @@ -139160,12 +140194,12 @@ webhooks: - updated_at - deployment_url - repository_url - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - workflow: *781 + workflow: *782 workflow_run: title: Deployment Workflow Run type: @@ -139856,7 +140890,7 @@ webhooks: type: string enum: - answered - answer: &784 + answer: &785 type: object properties: author_association: @@ -140016,11 +141050,11 @@ webhooks: - created_at - updated_at - body - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140147,11 +141181,11 @@ webhooks: - from required: - category - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140234,11 +141268,11 @@ webhooks: type: string enum: - closed - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140320,7 +141354,7 @@ webhooks: type: string enum: - created - comment: &783 + comment: &784 type: object properties: author_association: @@ -140480,11 +141514,11 @@ webhooks: - updated_at - body - reactions - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140567,12 +141601,12 @@ webhooks: type: string enum: - deleted - comment: *783 - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + comment: *784 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140667,12 +141701,12 @@ webhooks: - from required: - body - comment: *783 - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + comment: *784 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140756,11 +141790,11 @@ webhooks: type: string enum: - created - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140842,11 +141876,11 @@ webhooks: type: string enum: - deleted - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -140946,11 +141980,11 @@ webhooks: type: string required: - from - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -141032,10 +142066,10 @@ webhooks: type: string enum: - labeled - discussion: *782 - enterprise: *766 - installation: *767 - label: &785 + discussion: *783 + enterprise: *767 + installation: *768 + label: &786 title: Label type: object properties: @@ -141068,8 +142102,8 @@ webhooks: - color - default - description - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -141152,11 +142186,11 @@ webhooks: type: string enum: - locked - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -141238,11 +142272,11 @@ webhooks: type: string enum: - pinned - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -141324,11 +142358,11 @@ webhooks: type: string enum: - reopened - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -141413,16 +142447,16 @@ webhooks: changes: type: object properties: - new_discussion: *782 - new_repository: *769 + new_discussion: *783 + new_repository: *770 required: - new_discussion - new_repository - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -141505,10 +142539,10 @@ webhooks: type: string enum: - unanswered - discussion: *782 - old_answer: *784 - organization: *768 - repository: *769 + discussion: *783 + old_answer: *785 + organization: *769 + repository: *770 sender: *4 required: - action @@ -141590,12 +142624,12 @@ webhooks: type: string enum: - unlabeled - discussion: *782 - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -141678,11 +142712,11 @@ webhooks: type: string enum: - unlocked - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -141764,11 +142798,11 @@ webhooks: type: string enum: - unpinned - discussion: *782 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + discussion: *783 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -141841,7 +142875,7 @@ webhooks: description: A user forks a repository. type: object properties: - enterprise: *766 + enterprise: *767 forkee: description: The created [`repository`](https://docs.github.com/rest/repos/repos#get-a-repository) resource. @@ -142519,9 +143553,9 @@ webhooks: type: integer watchers_count: type: integer - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - forkee @@ -142667,9 +143701,9 @@ webhooks: title: gollum event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pages: description: The pages that were updated. type: array @@ -142707,7 +143741,7 @@ webhooks: - action - sha - html_url - repository: *769 + repository: *770 sender: *4 required: - pages @@ -142783,10 +143817,10 @@ webhooks: type: string enum: - created - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: &787 + organization: *769 + repositories: &788 description: An array of repository objects that the installation can access. type: array @@ -142812,8 +143846,8 @@ webhooks: - name - full_name - private - repository: *769 - requester: *786 + repository: *770 + requester: *787 sender: *4 required: - action @@ -142888,11 +143922,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -142969,11 +144003,11 @@ webhooks: type: string enum: - new_permissions_accepted - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -143050,10 +144084,10 @@ webhooks: type: string enum: - added - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories_added: &788 + organization: *769 + repositories_added: &789 description: An array of repository objects, which were added to the installation. type: array @@ -143099,15 +144133,15 @@ webhooks: private: description: Whether the repository is private or public. type: boolean - repository: *769 - repository_selection: &789 + repository: *770 + repository_selection: &790 description: Describe whether all repositories have been selected or there's a selection involved type: string enum: - all - selected - requester: *786 + requester: *787 sender: *4 required: - action @@ -143186,10 +144220,10 @@ webhooks: type: string enum: - removed - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories_added: *788 + organization: *769 + repositories_added: *789 repositories_removed: description: An array of repository objects, which were removed from the installation. @@ -143216,9 +144250,9 @@ webhooks: - name - full_name - private - repository: *769 - repository_selection: *789 - requester: *786 + repository: *770 + repository_selection: *790 + requester: *787 sender: *4 required: - action @@ -143297,11 +144331,11 @@ webhooks: type: string enum: - suspend - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -143483,10 +144517,10 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 target_type: type: string @@ -143565,11 +144599,11 @@ webhooks: type: string enum: - unsuspend - enterprise: *766 + enterprise: *767 installation: *20 - organization: *768 - repositories: *787 - repository: *769 + organization: *769 + repositories: *788 + repository: *770 requester: type: - 'null' @@ -143825,8 +144859,8 @@ webhooks: - performed_via_github_app - body - reactions - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -144638,8 +145672,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -145000,8 +146034,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -145081,7 +146115,7 @@ webhooks: type: string enum: - deleted - comment: &790 + comment: &791 title: issue comment description: The [comment](https://docs.github.com/rest/issues/comments#get-an-issue-comment) itself. @@ -145256,8 +146290,8 @@ webhooks: - performed_via_github_app - body - reactions - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -146065,8 +147099,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -146429,8 +147463,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -146510,7 +147544,7 @@ webhooks: type: string enum: - edited - changes: &814 + changes: &815 description: The changes to the comment. type: object properties: @@ -146522,9 +147556,9 @@ webhooks: type: string required: - from - comment: *790 - enterprise: *766 - installation: *767 + comment: *791 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -147335,8 +148369,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -147697,8 +148731,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -147779,9 +148813,9 @@ webhooks: type: string enum: - pinned - comment: *790 - enterprise: *766 - installation: *767 + comment: *791 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -148594,8 +149628,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -148958,8 +149992,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -149039,9 +150073,9 @@ webhooks: type: string enum: - unpinned - comment: *790 - enterprise: *766 - installation: *767 + comment: *791 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) the comment belongs to. @@ -149854,8 +150888,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 state: description: State of the issue; either 'open' or 'closed' type: string @@ -150218,8 +151252,8 @@ webhooks: - state - locked - assignee - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -150308,9 +151342,9 @@ webhooks: type: number blocking_issue: *83 blocking_issue_repo: *79 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -150399,9 +151433,9 @@ webhooks: type: number blocking_issue: *83 blocking_issue_repo: *79 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -150489,9 +151523,9 @@ webhooks: description: The ID of the blocking issue. type: number blocking_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -150580,9 +151614,9 @@ webhooks: description: The ID of the blocking issue. type: number blocking_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -150662,10 +151696,10 @@ webhooks: type: string enum: - assigned - assignee: *786 - enterprise: *766 - installation: *767 - issue: &791 + assignee: *787 + enterprise: *767 + installation: *768 + issue: &792 title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. @@ -151476,8 +152510,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -151600,8 +152634,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -151681,8 +152715,8 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. @@ -152498,8 +153532,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -152765,8 +153799,8 @@ webhooks: required: - state - closed_at - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -152845,8 +153879,8 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -153653,8 +154687,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -153776,8 +154810,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -153856,8 +154890,8 @@ webhooks: type: string enum: - demilestoned - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -154687,8 +155721,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -154789,7 +155823,7 @@ webhooks: format: uri user_view_type: type: string - milestone: &792 + milestone: &793 title: Milestone description: A collection of related issues and pull requests. type: object @@ -154932,8 +155966,8 @@ webhooks: - updated_at - due_on - closed_at - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -155032,8 +156066,8 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -155844,8 +156878,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -155968,9 +157002,9 @@ webhooks: - active_lock_reason - body - reactions - label: *785 - organization: *768 - repository: *769 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -156050,9 +157084,9 @@ webhooks: type: string enum: - field_added - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 issue_field: type: object description: The issue field whose value was set or updated on the @@ -156218,8 +157252,8 @@ webhooks: - id required: - from - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -156299,9 +157333,9 @@ webhooks: type: string enum: - field_removed - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 issue_field: type: object description: The issue field whose value was cleared from the issue. @@ -156388,8 +157422,8 @@ webhooks: - 'null' required: - id - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -156469,8 +157503,8 @@ webhooks: type: string enum: - labeled - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -157280,8 +158314,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -157404,9 +158438,9 @@ webhooks: - active_lock_reason - body - reactions - label: *785 - organization: *768 - repository: *769 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -157486,8 +158520,8 @@ webhooks: type: string enum: - locked - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -158322,8 +159356,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -158423,8 +159457,8 @@ webhooks: format: uri user_view_type: type: string - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -158503,8 +159537,8 @@ webhooks: type: string enum: - milestoned - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -159333,8 +160367,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -159434,9 +160468,9 @@ webhooks: format: uri user_view_type: type: string - milestone: *792 - organization: *768 - repository: *769 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -160323,8 +161357,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -160919,8 +161953,8 @@ webhooks: required: - old_issue - old_repository - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -161727,8 +162761,8 @@ webhooks: repository_url: type: string format: uri - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -161854,8 +162888,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -161935,9 +162969,9 @@ webhooks: type: string enum: - pinned - enterprise: *766 - installation: *767 - issue: &793 + enterprise: *767 + installation: *768 + issue: &794 title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) itself. @@ -162742,8 +163776,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -162865,8 +163899,8 @@ webhooks: - active_lock_reason - body - reactions - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -162945,8 +163979,8 @@ webhooks: type: string enum: - reopened - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -163779,8 +164813,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -163881,8 +164915,8 @@ webhooks: user_view_type: type: string type: *246 - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -164770,8 +165804,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -165384,11 +166418,11 @@ webhooks: required: - new_issue - new_repository - enterprise: *766 - installation: *767 - issue: *793 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *794 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165468,12 +166502,12 @@ webhooks: type: string enum: - typed - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 type: *246 - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165554,7 +166588,7 @@ webhooks: type: string enum: - unassigned - assignee: &817 + assignee: &818 title: User type: - object @@ -165626,11 +166660,11 @@ webhooks: required: - login - id - enterprise: *766 - installation: *767 - issue: *791 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *792 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165709,12 +166743,12 @@ webhooks: type: string enum: - unlabeled - enterprise: *766 - installation: *767 - issue: *791 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *792 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -165794,8 +166828,8 @@ webhooks: type: string enum: - unlocked - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 issue: title: Issue description: The [issue](https://docs.github.com/rest/issues/issues#get-an-issue) @@ -166628,8 +167662,8 @@ webhooks: anyOf: - type: 'null' - *84 - sub_issues_summary: *700 - issue_dependencies_summary: *701 + sub_issues_summary: *701 + issue_dependencies_summary: *702 issue_field_values: type: array items: *550 @@ -166729,8 +167763,8 @@ webhooks: format: uri user_view_type: type: string - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -166810,11 +167844,11 @@ webhooks: type: string enum: - unpinned - enterprise: *766 - installation: *767 - issue: *793 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + issue: *794 + organization: *769 + repository: *770 sender: *4 required: - action @@ -166893,12 +167927,12 @@ webhooks: type: string enum: - untyped - enterprise: *766 - installation: *767 - issue: *791 + enterprise: *767 + installation: *768 + issue: *792 type: *246 - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -166978,11 +168012,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -167060,11 +168094,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -167174,11 +168208,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - label: *785 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + label: *786 + organization: *769 + repository: *770 sender: *4 required: - action @@ -167260,9 +168294,9 @@ webhooks: - cancelled effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: &794 + enterprise: *767 + installation: *768 + marketplace_purchase: &795 title: Marketplace Purchase type: object required: @@ -167350,8 +168384,8 @@ webhooks: type: integer unit_count: type: integer - organization: *768 - previous_marketplace_purchase: &795 + organization: *769 + previous_marketplace_purchase: &796 title: Marketplace Purchase type: object properties: @@ -167435,7 +168469,7 @@ webhooks: - on_free_trial - free_trial_ends_on - plan - repository: *769 + repository: *770 sender: *4 required: - action @@ -167515,10 +168549,10 @@ webhooks: - changed effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: *794 - organization: *768 + enterprise: *767 + installation: *768 + marketplace_purchase: *795 + organization: *769 previous_marketplace_purchase: title: Marketplace Purchase type: object @@ -167606,7 +168640,7 @@ webhooks: - on_free_trial - free_trial_ends_on - plan - repository: *769 + repository: *770 sender: *4 required: - action @@ -167688,10 +168722,10 @@ webhooks: - pending_change effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: *794 - organization: *768 + enterprise: *767 + installation: *768 + marketplace_purchase: *795 + organization: *769 previous_marketplace_purchase: title: Marketplace Purchase type: object @@ -167777,7 +168811,7 @@ webhooks: - on_free_trial - free_trial_ends_on - plan - repository: *769 + repository: *770 sender: *4 required: - action @@ -167858,8 +168892,8 @@ webhooks: - pending_change_cancelled effective_date: type: string - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 marketplace_purchase: title: Marketplace Purchase type: object @@ -167945,9 +168979,9 @@ webhooks: type: integer unit_count: type: integer - organization: *768 - previous_marketplace_purchase: *795 - repository: *769 + organization: *769 + previous_marketplace_purchase: *796 + repository: *770 sender: *4 required: - action @@ -168027,12 +169061,12 @@ webhooks: - purchased effective_date: type: string - enterprise: *766 - installation: *767 - marketplace_purchase: *794 - organization: *768 - previous_marketplace_purchase: *795 - repository: *769 + enterprise: *767 + installation: *768 + marketplace_purchase: *795 + organization: *769 + previous_marketplace_purchase: *796 + repository: *770 sender: *4 required: - action @@ -168134,11 +169168,11 @@ webhooks: type: string required: - to - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168240,11 +169274,11 @@ webhooks: type: - string - 'null' - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168323,11 +169357,11 @@ webhooks: type: string enum: - removed - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168405,11 +169439,11 @@ webhooks: type: string enum: - added - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 scope: description: The scope of the membership. Currently, can only be `team`. @@ -168487,7 +169521,7 @@ webhooks: required: - login - id - team: &796 + team: &797 title: Team description: Groups of organization members that gives permissions on specified repositories. @@ -168717,11 +169751,11 @@ webhooks: type: string enum: - removed - enterprise: *766 - installation: *767 - member: *786 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + member: *787 + organization: *769 + repository: *770 scope: description: The scope of the membership. Currently, can only be `team`. @@ -168800,7 +169834,7 @@ webhooks: required: - login - id - team: *796 + team: *797 required: - action - scope @@ -168882,8 +169916,8 @@ webhooks: type: string enum: - checks_requested - installation: *767 - merge_group: &797 + installation: *768 + merge_group: &798 type: object title: Merge Group description: A group of pull requests that the merge queue has grouped @@ -168909,8 +169943,8 @@ webhooks: - base_sha - base_ref - head_commit - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -168996,10 +170030,10 @@ webhooks: - merged - invalidated - dequeued - installation: *767 - merge_group: *797 - organization: *768 - repository: *769 + installation: *768 + merge_group: *798 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169072,7 +170106,7 @@ webhooks: type: string enum: - deleted - enterprise: *766 + enterprise: *767 hook: description: 'The deleted webhook. This will contain different keys based on the type of webhook it is: repository, organization, @@ -169181,12 +170215,12 @@ webhooks: hook_id: description: The id of the modified webhook. type: integer - installation: *767 - organization: *768 + installation: *768 + organization: *769 repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -169266,11 +170300,11 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 - milestone: *792 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169349,9 +170383,9 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - milestone: &798 + enterprise: *767 + installation: *768 + milestone: &799 title: Milestone description: A collection of related issues and pull requests. type: object @@ -169493,8 +170527,8 @@ webhooks: - updated_at - due_on - closed_at - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169573,11 +170607,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - milestone: *792 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169687,11 +170721,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - milestone: *792 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *793 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169771,11 +170805,11 @@ webhooks: type: string enum: - opened - enterprise: *766 - installation: *767 - milestone: *798 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + milestone: *799 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169854,11 +170888,11 @@ webhooks: type: string enum: - blocked - blocked_user: *786 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + blocked_user: *787 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -169937,11 +170971,11 @@ webhooks: type: string enum: - unblocked - blocked_user: *786 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + blocked_user: *787 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -170020,9 +171054,9 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - membership: &799 + enterprise: *767 + installation: *768 + membership: &800 title: Membership description: The membership between the user and the organization. Not present when the action is `member_invited`. @@ -170132,8 +171166,8 @@ webhooks: - role - organization_url - user - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 required: - action @@ -170211,11 +171245,11 @@ webhooks: type: string enum: - member_added - enterprise: *766 - installation: *767 - membership: *799 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + membership: *800 + organization: *769 + repository: *770 sender: *4 required: - action @@ -170294,8 +171328,8 @@ webhooks: type: string enum: - member_invited - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 invitation: description: The invitation for the user or email if the action is `member_invited`. @@ -170417,10 +171451,10 @@ webhooks: - inviter - team_count - invitation_teams_url - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 - user: *786 + user: *787 required: - action - invitation @@ -170498,11 +171532,11 @@ webhooks: type: string enum: - member_removed - enterprise: *766 - installation: *767 - membership: *799 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + membership: *800 + organization: *769 + repository: *770 sender: *4 required: - action @@ -170589,11 +171623,11 @@ webhooks: properties: from: type: string - enterprise: *766 - installation: *767 - membership: *799 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + membership: *800 + organization: *769 + repository: *770 sender: *4 required: - action @@ -170670,9 +171704,9 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 package: description: Information about the package. type: object @@ -171195,7 +172229,7 @@ webhooks: - published_at rubygems_metadata: type: array - items: &800 + items: &801 title: Ruby Gems metadata type: object properties: @@ -171292,7 +172326,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -171368,9 +172402,9 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 package: description: Information about the package. type: object @@ -171732,7 +172766,7 @@ webhooks: - published_at rubygems_metadata: type: array - items: *800 + items: *801 source_url: type: string format: uri @@ -171803,7 +172837,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -171983,12 +173017,12 @@ webhooks: - duration - created_at - updated_at - enterprise: *766 + enterprise: *767 id: type: integer - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - id @@ -172065,7 +173099,7 @@ webhooks: type: string enum: - approved - personal_access_token_request: &801 + personal_access_token_request: &802 title: Personal Access Token Request description: Details of a Personal Access Token Request. type: object @@ -172215,10 +173249,10 @@ webhooks: - token_expired - token_expires_at - token_last_used_at - enterprise: *766 - organization: *768 + enterprise: *767 + organization: *769 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -172295,11 +173329,11 @@ webhooks: type: string enum: - cancelled - personal_access_token_request: *801 - enterprise: *766 - organization: *768 + personal_access_token_request: *802 + enterprise: *767 + organization: *769 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -172375,11 +173409,11 @@ webhooks: type: string enum: - created - personal_access_token_request: *801 - enterprise: *766 - organization: *768 + personal_access_token_request: *802 + enterprise: *767 + organization: *769 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -172454,11 +173488,11 @@ webhooks: type: string enum: - denied - personal_access_token_request: *801 - organization: *768 - enterprise: *766 + personal_access_token_request: *802 + organization: *769 + enterprise: *767 sender: *4 - installation: *767 + installation: *768 required: - action - personal_access_token_request @@ -172563,7 +173597,7 @@ webhooks: id: description: Unique identifier of the webhook. type: integer - last_response: *802 + last_response: *803 name: description: The type of webhook. The only valid value is 'web'. type: string @@ -172595,8 +173629,8 @@ webhooks: hook_id: description: The ID of the webhook that triggered the ping. type: integer - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 zen: description: Random string of GitHub zen. @@ -172841,10 +173875,10 @@ webhooks: - from required: - note - enterprise: *766 - installation: *767 - organization: *768 - project_card: &803 + enterprise: *767 + installation: *768 + organization: *769 + project_card: &804 title: Project Card type: object properties: @@ -172967,7 +174001,7 @@ webhooks: - creator - created_at - updated_at - repository: *769 + repository: *770 sender: *4 required: - action @@ -173048,11 +174082,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - project_card: *803 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_card: *804 + repository: *770 sender: *4 required: - action @@ -173132,9 +174166,9 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 project_card: title: Project Card type: object @@ -173264,7 +174298,7 @@ webhooks: repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -173358,11 +174392,11 @@ webhooks: - from required: - note - enterprise: *766 - installation: *767 - organization: *768 - project_card: *803 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_card: *804 + repository: *770 sender: *4 required: - action @@ -173456,9 +174490,9 @@ webhooks: - from required: - column_id - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 project_card: allOf: - title: Project Card @@ -173655,7 +174689,7 @@ webhooks: type: string required: - after_id - repository: *769 + repository: *770 sender: *4 required: - action @@ -173735,10 +174769,10 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 - organization: *768 - project: &805 + enterprise: *767 + installation: *768 + organization: *769 + project: &806 title: Project type: object properties: @@ -173865,7 +174899,7 @@ webhooks: - creator - created_at - updated_at - repository: *769 + repository: *770 sender: *4 required: - action @@ -173945,10 +174979,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - project_column: &804 + enterprise: *767 + installation: *768 + organization: *769 + project_column: &805 title: Project Column type: object properties: @@ -173988,7 +175022,7 @@ webhooks: - name - created_at - updated_at - repository: *769 + repository: *770 sender: *4 required: - action @@ -174067,14 +175101,14 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - project_column: *804 + enterprise: *767 + installation: *768 + organization: *769 + project_column: *805 repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -174163,11 +175197,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - project_column: *804 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_column: *805 + repository: *770 sender: *4 required: - action @@ -174247,11 +175281,11 @@ webhooks: type: string enum: - moved - enterprise: *766 - installation: *767 - organization: *768 - project_column: *804 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project_column: *805 + repository: *770 sender: *4 required: - action @@ -174331,11 +175365,11 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - project: *805 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 + repository: *770 sender: *4 required: - action @@ -174415,14 +175449,14 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - project: *805 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 repository: anyOf: - type: 'null' - - *769 + - *770 sender: *4 required: - action @@ -174523,11 +175557,11 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - project: *805 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 + repository: *770 sender: *4 required: - action @@ -174606,11 +175640,11 @@ webhooks: type: string enum: - reopened - enterprise: *766 - installation: *767 - organization: *768 - project: *805 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + project: *806 + repository: *770 sender: *4 required: - action @@ -174691,8 +175725,8 @@ webhooks: type: string enum: - closed - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -174774,8 +175808,8 @@ webhooks: type: string enum: - created - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -174857,8 +175891,8 @@ webhooks: type: string enum: - deleted - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -174980,8 +176014,8 @@ webhooks: type: string to: type: string - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -175065,7 +176099,7 @@ webhooks: type: string enum: - archived - changes: &809 + changes: &810 type: object properties: archived_at: @@ -175081,9 +176115,9 @@ webhooks: - string - 'null' format: date-time - installation: *767 - organization: *768 - projects_v2_item: &806 + installation: *768 + organization: *769 + projects_v2_item: &807 title: Projects v2 Item description: An item belonging to a project type: object @@ -175223,9 +176257,9 @@ webhooks: - 'null' to: type: string - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -175307,9 +176341,9 @@ webhooks: type: string enum: - created - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -175390,9 +176424,9 @@ webhooks: type: string enum: - deleted - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -175497,7 +176531,7 @@ webhooks: oneOf: - type: string - type: integer - - &807 + - &808 title: Projects v2 Single Select Option description: An option for a single select field type: object @@ -175521,7 +176555,7 @@ webhooks: required: - id - name - - &808 + - &809 title: Projects v2 Iteration Setting description: An iteration setting for an iteration field type: object @@ -175561,8 +176595,8 @@ webhooks: oneOf: - type: string - type: integer - - *807 - *808 + - *809 type: - 'null' - string @@ -175585,9 +176619,9 @@ webhooks: - 'null' required: - body - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -175684,9 +176718,9 @@ webhooks: type: - string - 'null' - installation: *767 - organization: *768 - projects_v2_item: *806 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -175769,10 +176803,10 @@ webhooks: type: string enum: - restored - changes: *809 - installation: *767 - organization: *768 - projects_v2_item: *806 + changes: *810 + installation: *768 + organization: *769 + projects_v2_item: *807 sender: *4 required: - action @@ -175854,8 +176888,8 @@ webhooks: type: string enum: - reopened - installation: *767 - organization: *768 + installation: *768 + organization: *769 projects_v2: *279 sender: *4 required: @@ -175937,9 +176971,9 @@ webhooks: type: string enum: - created - installation: *767 - organization: *768 - projects_v2_status_update: *810 + installation: *768 + organization: *769 + projects_v2_status_update: *811 sender: *4 required: - action @@ -176020,9 +177054,9 @@ webhooks: type: string enum: - deleted - installation: *767 - organization: *768 - projects_v2_status_update: *810 + installation: *768 + organization: *769 + projects_v2_status_update: *811 sender: *4 required: - action @@ -176168,9 +177202,9 @@ webhooks: - string - 'null' format: date - installation: *767 - organization: *768 - projects_v2_status_update: *810 + installation: *768 + organization: *769 + projects_v2_status_update: *811 sender: *4 required: - action @@ -176241,10 +177275,10 @@ webhooks: title: public event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - repository @@ -176321,13 +177355,13 @@ webhooks: type: string enum: - assigned - assignee: *786 - enterprise: *766 - installation: *767 - number: &811 + assignee: *787 + enterprise: *767 + installation: *768 + number: &812 description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -178699,7 +179733,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -178796,11 +179830,11 @@ webhooks: type: string enum: - auto_merge_disabled - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -181165,7 +182199,7 @@ webhooks: - draft reason: type: string - repository: *769 + repository: *770 sender: *4 required: - action @@ -181262,11 +182296,11 @@ webhooks: type: string enum: - auto_merge_enabled - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -183631,7 +184665,7 @@ webhooks: - draft reason: type: string - repository: *769 + repository: *770 sender: *4 required: - action @@ -183728,11 +184762,11 @@ webhooks: type: string enum: - closed - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: &812 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: &813 allOf: - *602 - type: object @@ -183796,7 +184830,7 @@ webhooks: Please use `squash_merge_commit_title` instead.** type: boolean default: false - repository: *769 + repository: *770 sender: *4 required: - action @@ -183877,12 +184911,12 @@ webhooks: type: string enum: - converted_to_draft - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -183962,11 +184996,11 @@ webhooks: type: string enum: - demilestoned - enterprise: *766 + enterprise: *767 milestone: *282 - number: *811 - organization: *768 - pull_request: &813 + number: *812 + organization: *769 + pull_request: &814 title: Pull Request type: object properties: @@ -186358,7 +187392,7 @@ webhooks: - active_lock_reason - draft version: '2026-03-10' - repository: *769 + repository: *770 sender: *4 required: - action @@ -186437,11 +187471,11 @@ webhooks: type: string enum: - dequeued - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -188810,7 +189844,7 @@ webhooks: - BRANCH_PROTECTIONS - GIT_TREE_INVALID - INVALID_MERGE_COMMIT - repository: *769 + repository: *770 sender: *4 required: - action @@ -188942,12 +189976,12 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -189027,11 +190061,11 @@ webhooks: type: string enum: - enqueued - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -191385,7 +192419,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -191473,11 +192507,11 @@ webhooks: type: string enum: - labeled - enterprise: *766 - installation: *767 - label: *785 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + label: *786 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -193848,7 +194882,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -193944,10 +194978,10 @@ webhooks: type: string enum: - locked - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -196316,7 +197350,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -196411,12 +197445,12 @@ webhooks: type: string enum: - milestoned - enterprise: *766 + enterprise: *767 milestone: *282 - number: *811 - organization: *768 - pull_request: *813 - repository: *769 + number: *812 + organization: *769 + pull_request: *814 + repository: *770 sender: *4 required: - action @@ -196495,12 +197529,12 @@ webhooks: type: string enum: - opened - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -196581,12 +197615,12 @@ webhooks: type: string enum: - ready_for_review - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -196666,12 +197700,12 @@ webhooks: type: string enum: - reopened - enterprise: *766 - installation: *767 - number: *811 - organization: *768 - pull_request: *812 - repository: *769 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 + pull_request: *813 + repository: *770 sender: *4 required: - action @@ -197046,9 +198080,9 @@ webhooks: - start_side - side - reactions - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: type: object properties: @@ -199301,7 +200335,7 @@ webhooks: - _links - author_association - active_lock_reason - repository: *769 + repository: *770 sender: *4 required: - action @@ -199396,7 +200430,7 @@ webhooks: type: string enum: - deleted - comment: &815 + comment: &816 title: Pull Request Review Comment description: The [comment](https://docs.github.com/rest/pulls/comments#get-a-review-comment-for-a-pull-request) itself. @@ -199689,9 +200723,9 @@ webhooks: - start_side - side - reactions - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: type: object properties: @@ -201932,7 +202966,7 @@ webhooks: - _links - author_association - active_lock_reason - repository: *769 + repository: *770 sender: *4 required: - action @@ -202027,11 +203061,11 @@ webhooks: type: string enum: - edited - changes: *814 - comment: *815 - enterprise: *766 - installation: *767 - organization: *768 + changes: *815 + comment: *816 + enterprise: *767 + installation: *768 + organization: *769 pull_request: type: object properties: @@ -204275,7 +205309,7 @@ webhooks: - _links - author_association - active_lock_reason - repository: *769 + repository: *770 sender: *4 required: - action @@ -204371,9 +205405,9 @@ webhooks: type: string enum: - dismissed - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -206629,7 +207663,7 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 + repository: *770 review: description: The review that was affected. type: object @@ -206895,9 +207929,9 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -209011,8 +210045,8 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 - review: &816 + repository: *770 + review: &817 description: The review that was affected. type: object properties: @@ -209258,12 +210292,12 @@ webhooks: type: string enum: - review_request_removed - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -211633,7 +212667,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_reviewer: title: User type: @@ -211719,12 +212753,12 @@ webhooks: type: string enum: - review_request_removed - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -214101,7 +215135,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_team: title: Team description: Groups of organization members that gives permissions @@ -214319,12 +215353,12 @@ webhooks: type: string enum: - review_requested - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -216696,7 +217730,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_reviewer: title: User type: @@ -216783,12 +217817,12 @@ webhooks: type: string enum: - review_requested - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 number: description: The pull request number. type: integer - organization: *768 + organization: *769 pull_request: title: Pull Request type: object @@ -219151,7 +220185,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 requested_team: title: Team description: Groups of organization members that gives permissions @@ -219358,9 +220392,9 @@ webhooks: type: string enum: - submitted - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -221619,8 +222653,8 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 - review: *816 + repository: *770 + review: *817 sender: *4 required: - action @@ -221715,9 +222749,9 @@ webhooks: type: string enum: - resolved - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -223871,7 +224905,7 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 + repository: *770 sender: *4 thread: type: object @@ -224276,9 +225310,9 @@ webhooks: type: string enum: - unresolved - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 pull_request: title: Simple Pull Request type: object @@ -226415,7 +227449,7 @@ webhooks: - author_association - auto_merge - active_lock_reason - repository: *769 + repository: *770 sender: *4 thread: type: object @@ -226816,11 +227850,11 @@ webhooks: type: string enum: - stacked - enterprise: *766 - installation: *767 + enterprise: *767 + installation: *768 stack: *599 - number: *811 - organization: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -229191,7 +230225,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -229292,10 +230326,10 @@ webhooks: type: string before: type: string - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -231653,7 +232687,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -231750,11 +232784,11 @@ webhooks: type: string enum: - unassigned - assignee: *817 - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + assignee: *818 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -234127,7 +235161,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -234221,11 +235255,11 @@ webhooks: type: string enum: - unlabeled - enterprise: *766 - installation: *767 - label: *785 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + label: *786 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -236587,7 +237621,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -236683,10 +237717,10 @@ webhooks: type: string enum: - unlocked - enterprise: *766 - installation: *767 - number: *811 - organization: *768 + enterprise: *767 + installation: *768 + number: *812 + organization: *769 pull_request: title: Pull Request type: object @@ -239038,7 +240072,7 @@ webhooks: - auto_merge - active_lock_reason - draft - repository: *769 + repository: *770 sender: *4 required: - action @@ -239256,7 +240290,7 @@ webhooks: deleted: description: Whether this push deleted the `ref`. type: boolean - enterprise: *766 + enterprise: *767 forced: description: Whether this push was a force push of the `ref`. type: boolean @@ -239351,8 +240385,8 @@ webhooks: - url - author - committer - installation: *767 - organization: *768 + installation: *768 + organization: *769 pusher: title: Committer description: Metaproperties for Git author/committer information. @@ -239951,9 +240985,9 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 registry_package: type: object properties: @@ -240430,7 +241464,7 @@ webhooks: type: string rubygems_metadata: type: array - items: *800 + items: *801 summary: type: string tag_name: @@ -240486,7 +241520,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -240564,9 +241598,9 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 registry_package: type: object properties: @@ -240878,7 +241912,7 @@ webhooks: - published_at rubygems_metadata: type: array - items: *800 + items: *801 summary: type: string tag_name: @@ -240928,7 +241962,7 @@ webhooks: - owner - package_version - registry - repository: *769 + repository: *770 sender: *4 required: - action @@ -241005,10 +242039,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - release: &818 + enterprise: *767 + installation: *768 + organization: *769 + release: &819 title: Release description: The [release](https://docs.github.com/rest/releases/releases/#get-a-release) object. @@ -241339,7 +242373,7 @@ webhooks: - updated_at - zipball_url - body - repository: *769 + repository: *770 sender: *4 required: - action @@ -241416,11 +242450,11 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - release: *818 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *819 + repository: *770 sender: *4 required: - action @@ -241537,11 +242571,11 @@ webhooks: type: boolean required: - to - enterprise: *766 - installation: *767 - organization: *768 - release: *818 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *819 + repository: *770 sender: *4 required: - action @@ -241619,9 +242653,9 @@ webhooks: type: string enum: - prereleased - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 release: title: Release description: The [release](https://docs.github.com/rest/releases/releases/#get-a-release) @@ -241957,7 +242991,7 @@ webhooks: - string - 'null' format: uri - repository: *769 + repository: *770 sender: *4 required: - action @@ -242033,10 +243067,10 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 - release: &819 + enterprise: *767 + installation: *768 + organization: *769 + release: &820 title: Release description: The [release](https://docs.github.com/rest/releases/releases/#get-a-release) object. @@ -242369,7 +243403,7 @@ webhooks: - string - 'null' format: uri - repository: *769 + repository: *770 sender: *4 required: - action @@ -242445,11 +243479,11 @@ webhooks: type: string enum: - released - enterprise: *766 - installation: *767 - organization: *768 - release: *818 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *819 + repository: *770 sender: *4 required: - action @@ -242525,11 +243559,11 @@ webhooks: type: string enum: - unpublished - enterprise: *766 - installation: *767 - organization: *768 - release: *819 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + release: *820 + repository: *770 sender: *4 required: - action @@ -242605,10 +243639,10 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_advisory: *687 sender: *4 required: @@ -242685,10 +243719,10 @@ webhooks: type: string enum: - reported - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_advisory: *687 sender: *4 required: @@ -242765,10 +243799,10 @@ webhooks: type: string enum: - archived - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242845,10 +243879,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -242926,10 +243960,10 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243014,10 +244048,10 @@ webhooks: additionalProperties: true description: The `client_payload` that was specified in the `POST /repos/{owner}/{repo}/dispatches` request body. - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243132,10 +244166,10 @@ webhooks: - 'null' items: type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243207,10 +244241,10 @@ webhooks: title: repository_import event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 status: type: string @@ -243291,10 +244325,10 @@ webhooks: type: string enum: - privatized - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243371,10 +244405,10 @@ webhooks: type: string enum: - publicized - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243468,10 +244502,10 @@ webhooks: - name required: - repository - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -243551,10 +244585,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_ruleset: *324 sender: *4 required: @@ -243633,10 +244667,10 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_ruleset: *324 sender: *4 required: @@ -243715,10 +244749,10 @@ webhooks: type: string enum: - edited - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 repository_ruleset: *324 changes: type: object @@ -244026,10 +245060,10 @@ webhooks: - from required: - owner - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244107,10 +245141,10 @@ webhooks: type: string enum: - unarchived - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244188,7 +245222,7 @@ webhooks: type: string enum: - create - alert: &820 + alert: &821 title: Repository Vulnerability Alert Alert description: The security alert of the vulnerable dependency. type: object @@ -244313,10 +245347,10 @@ webhooks: enum: - auto_dismissed - open - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244526,10 +245560,10 @@ webhooks: type: string enum: - dismissed - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244607,11 +245641,11 @@ webhooks: type: string enum: - reopen - alert: *820 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *821 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244813,10 +245847,10 @@ webhooks: enum: - fixed - open - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -244894,7 +245928,7 @@ webhooks: type: string enum: - assigned - alert: &822 + alert: &823 type: object properties: number: *181 @@ -245041,12 +246075,12 @@ webhooks: anyOf: - type: 'null' - *4 - metadata: *821 + metadata: *822 assignee: *4 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -245124,11 +246158,11 @@ webhooks: type: string enum: - created - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -245209,11 +246243,11 @@ webhooks: type: string enum: - created - alert: *822 - installation: *767 - location: *823 - organization: *768 - repository: *769 + alert: *823 + installation: *768 + location: *824 + organization: *769 + repository: *770 sender: *4 required: - location @@ -245451,11 +246485,11 @@ webhooks: type: string enum: - metadata_created - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -245532,11 +246566,11 @@ webhooks: type: string enum: - metadata_removed - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -245613,11 +246647,11 @@ webhooks: type: string enum: - publicly_leaked - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -245695,11 +246729,11 @@ webhooks: type: string enum: - reopened - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -245777,11 +246811,11 @@ webhooks: type: string enum: - resolved - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -245859,12 +246893,12 @@ webhooks: type: string enum: - unassigned - alert: *822 + alert: *823 assignee: *4 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -245942,11 +246976,11 @@ webhooks: type: string enum: - validated - alert: *822 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + alert: *823 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -246076,10 +247110,10 @@ webhooks: - organization - enterprise - - repository: *769 - enterprise: *766 - installation: *767 - organization: *768 + repository: *770 + enterprise: *767 + installation: *768 + organization: *769 sender: *4 required: - action @@ -246157,11 +247191,11 @@ webhooks: type: string enum: - published - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - security_advisory: &824 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + security_advisory: &825 description: The details of the security advisory, including summary, description, and severity. type: object @@ -246365,11 +247399,11 @@ webhooks: type: string enum: - updated - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 - security_advisory: *824 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 + security_advisory: *825 sender: *4 required: - action @@ -246442,10 +247476,10 @@ webhooks: type: string enum: - withdrawn - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 security_advisory: description: The details of the security advisory, including summary, description, and severity. @@ -246640,9 +247674,9 @@ webhooks: type: object properties: security_and_analysis: *297 - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: *343 sender: *4 required: @@ -246721,12 +247755,12 @@ webhooks: type: string enum: - cancelled - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: &825 + sponsorship: &826 type: object properties: created_at: @@ -247031,12 +248065,12 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - sponsorship @@ -247124,12 +248158,12 @@ webhooks: type: string required: - from - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - changes @@ -247206,17 +248240,17 @@ webhooks: type: string enum: - pending_cancellation - effective_date: &826 + effective_date: &827 description: The `pending_cancellation` and `pending_tier_change` event types will include the date the cancellation or tier change will take effect. type: string - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - sponsorship @@ -247290,7 +248324,7 @@ webhooks: type: string enum: - pending_tier_change - changes: &827 + changes: &828 type: object properties: tier: @@ -247334,13 +248368,13 @@ webhooks: - from required: - tier - effective_date: *826 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + effective_date: *827 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - changes @@ -247417,13 +248451,13 @@ webhooks: type: string enum: - tier_changed - changes: *827 - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + changes: *828 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - sponsorship: *825 + sponsorship: *826 required: - action - changes @@ -247497,10 +248531,10 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 starred_at: description: 'The time the star was created. This is a timestamp @@ -247584,10 +248618,10 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 starred_at: description: 'The time the star was created. This is a timestamp @@ -248021,15 +249055,15 @@ webhooks: type: - string - 'null' - enterprise: *766 + enterprise: *767 id: description: The unique identifier of the status. type: integer - installation: *767 + installation: *768 name: type: string - organization: *768 - repository: *769 + organization: *769 + repository: *770 sender: *4 sha: description: The Commit SHA. @@ -248145,9 +249179,9 @@ webhooks: description: The ID of the sub-issue. type: number sub_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -248236,9 +249270,9 @@ webhooks: description: The ID of the sub-issue. type: number sub_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -248327,9 +249361,9 @@ webhooks: description: The ID of the parent issue. type: number parent_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -248418,9 +249452,9 @@ webhooks: description: The ID of the parent issue. type: number parent_issue: *83 - installation: *767 - organization: *768 - repository: *769 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -248496,12 +249530,12 @@ webhooks: title: team_add event type: object properties: - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 - team: &828 + team: &829 title: Team description: Groups of organization members that gives permissions on specified repositories. @@ -248731,9 +249765,9 @@ webhooks: type: string enum: - added_to_repository - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -249203,7 +250237,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -249279,9 +250313,9 @@ webhooks: type: string enum: - created - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -249751,7 +250785,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -249828,9 +250862,9 @@ webhooks: type: string enum: - deleted - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -250300,7 +251334,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -250444,9 +251478,9 @@ webhooks: - from required: - permissions - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -250916,7 +251950,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - changes @@ -250994,9 +252028,9 @@ webhooks: type: string enum: - removed_from_repository - enterprise: *766 - installation: *767 - organization: *768 + enterprise: *767 + installation: *768 + organization: *769 repository: title: Repository description: A git repository @@ -251466,7 +252500,7 @@ webhooks: - topics - visibility sender: *4 - team: *828 + team: *829 required: - action - team @@ -251542,10 +252576,10 @@ webhooks: type: string enum: - started - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 required: - action @@ -251618,17 +252652,17 @@ webhooks: title: workflow_dispatch event type: object properties: - enterprise: *766 + enterprise: *767 inputs: type: - object - 'null' additionalProperties: true - installation: *767 - organization: *768 + installation: *768 + organization: *769 ref: type: string - repository: *769 + repository: *770 sender: *4 workflow: type: string @@ -251710,10 +252744,10 @@ webhooks: type: string enum: - completed - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 workflow_job: allOf: @@ -252048,10 +253082,10 @@ webhooks: type: string enum: - in_progress - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender: *4 workflow_job: allOf: @@ -252412,10 +253446,10 @@ webhooks: type: string enum: - queued - enterprise: *766 - installation: *767 - organization: *768 - repository: *769 + enterprise: *767 + installation: *768 + organization: *769 + repository: *770 sender{"code":"deadline_exceeded","msg":"operation timed out"}