Skip to main content
REST API 现已经过版本控制。 有关详细信息,请参阅“关于 API 版本控制”。

gists 的 REST API 终结点

使用 REST API 列出、创建、更新和删除 GitHub 上的公共 Gist。

关于 gists

可使用 REST API 查看和修改 Gist。 有关 Gist 的详细信息,请参阅“编辑内容以及与 gist 共享内容”。

身份验证

可以匿名读取公共 Gist ,但是必须要登录到 GitHub 才能创建 Gist。要代表用户读取或写入 Gist,需要 Gist OAuth 作用域和令牌。 有关详细信息,请参阅“OAuth 应用的范围”。

截断

该 API 为 Gist 中的每个文件提供最多一兆字节的内容。 通过 API 为 Gist 返回的每个文件都有一个名为 truncated 的密钥。 如果 truncatedtrue,则文件太大,仅返回了 content 部分内容。

如果需要文件的完整内容,可以向 raw_url 指定的 URL 发出 GET 请求。 请注意,对于超过十兆字节的文件,需要通过 git_pull_url 提供的 URL 克隆 Gist。

除了特定文件的内容被截断外,如果文件总数超过 300 个,则整个文件列表也可能被截断。 如果顶层 truncated 键为 true,则仅返回文件列表中的前 300 个文件。 如果需要获取 Gist 的所有文件,需要通过 git_pull_url 提供的 URL 克隆 Gist。

List gists for the authenticated user

Lists the authenticated user's gists or if called anonymously, this endpoint returns all public gists:

“List gists for the authenticated user”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌不需要任何权限。

“List gists for the authenticated user”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

查询参数
名称, 类型, 说明
since string

Only show results that were last updated after the given time. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

默认: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

默认: 1

“List gists for the authenticated user”的 HTTP 响应状态代码

状态代码说明
200

OK

304

Not modified

403

Forbidden

“List gists for the authenticated user”的示例代码

请求示例

get/gists
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists

Response

Status: 200
[ { "url": "https://api.github.com/gists/aa5a315d61ae9438b18d", "forks_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/forks", "commits_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/commits", "id": "aa5a315d61ae9438b18d", "node_id": "MDQ6R2lzdGFhNWEzMTVkNjFhZTk0MzhiMThk", "git_pull_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "git_push_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "html_url": "https://gist.github.com/aa5a315d61ae9438b18d", "files": { "hello_world.rb": { "filename": "hello_world.rb", "type": "application/x-ruby", "language": "Ruby", "raw_url": "https://gist.githubusercontent.com/octocat/6cad326836d38bd3a7ae/raw/db9c55113504e46fa076e7df3a04ce592e2e86d8/hello_world.rb", "size": 167 } }, "public": true, "created_at": "2010-04-14T02:15:15Z", "updated_at": "2011-06-20T11:34:15Z", "description": "Hello World Examples", "comments": 0, "user": null, "comments_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/comments/", "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 }, "truncated": false } ]

Create a gist

Allows you to add a new gist with one or more files.

Note: Don't name your files "gistfile" with a numerical suffix. This is the format of the automatic naming scheme that Gist uses internally.

“Create a gist”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌必须具有以下权限集:

  • gists:write

“Create a gist”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

正文参数
名称, 类型, 说明
description string

Description of the gist

files object 必须

Names and content for the files that make up the gist

名称, 类型, 说明
key object

A user-defined key to represent an item in files.

名称, 类型, 说明
content string 必须

Content of the file

public boolean or string

Flag indicating whether the gist is public

“Create a gist”的 HTTP 响应状态代码

状态代码说明
201

Created

304

Not modified

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

“Create a gist”的示例代码

请求示例

post/gists
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists \ -d '{"description":"Example of a gist","public":false,"files":{"README.md":{"content":"Hello World"}}}'

Response

Status: 201
{ "url": "https://api.github.com/gists/2decf6c462d9b4418f2", "forks_url": "https://api.github.com/gists/2decf6c462d9b4418f2/forks", "commits_url": "https://api.github.com/gists/2decf6c462d9b4418f2/commits", "id": "2decf6c462d9b4418f2", "node_id": "G_kwDOBhHyLdZDliNDQxOGYy", "git_pull_url": "https://gist.github.com/2decf6c462d9b4418f2.git", "git_push_url": "https://gist.github.com/2decf6c462d9b4418f2.git", "html_url": "https://gist.github.com/2decf6c462d9b4418f2", "files": { "README.md": { "filename": "README.md", "type": "text/markdown", "language": "Markdown", "raw_url": "https://gist.githubusercontent.com/monalisa/2decf6c462d9b4418f2/raw/ac3e6daf176fafe73609fd000cd188e4472010fb/README.md", "size": 23, "truncated": false, "content": "Hello world from GitHub" } }, "public": true, "created_at": "2022-09-20T12:11:58Z", "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", "id": 104456405, "node_id": "U_kgDOBhHyLQ", "avatar_url": "https://avatars.githubusercontent.com/u/104456405?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", "site_admin": true }, "forks": [], "history": [ { "user": { "login": "monalisa", "id": 104456405, "node_id": "U_kgyLQ", "avatar_url": "https://avatars.githubusercontent.com/u/104456405?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", "site_admin": true }, "version": "468aac8caed5f0c3b859b8286968", "committed_at": "2022-09-21T10:28:06Z", "change_status": { "total": 2, "additions": 1, "deletions": 1 }, "url": "https://api.github.com/gists/8481a81af6b7a2d418f2/468aac8caed5f0c3b859b8286968" } ], "truncated": false }

List public gists

List public gists sorted by most recently updated to least recently updated.

Note: With pagination, you can fetch up to 3000 gists. For example, you can fetch 100 pages with 30 gists per page or 30 pages with 100 gists per page.

“List public gists”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌不需要任何权限。

“List public gists”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

查询参数
名称, 类型, 说明
since string

Only show results that were last updated after the given time. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

默认: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

默认: 1

“List public gists”的 HTTP 响应状态代码

状态代码说明
200

OK

304

Not modified

403

Forbidden

422

Validation failed, or the endpoint has been spammed.

“List public gists”的示例代码

请求示例

get/gists/public
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/public

Response

Status: 200
[ { "url": "https://api.github.com/gists/aa5a315d61ae9438b18d", "forks_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/forks", "commits_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/commits", "id": "aa5a315d61ae9438b18d", "node_id": "MDQ6R2lzdGFhNWEzMTVkNjFhZTk0MzhiMThk", "git_pull_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "git_push_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "html_url": "https://gist.github.com/aa5a315d61ae9438b18d", "files": { "hello_world.rb": { "filename": "hello_world.rb", "type": "application/x-ruby", "language": "Ruby", "raw_url": "https://gist.githubusercontent.com/octocat/6cad326836d38bd3a7ae/raw/db9c55113504e46fa076e7df3a04ce592e2e86d8/hello_world.rb", "size": 167 } }, "public": true, "created_at": "2010-04-14T02:15:15Z", "updated_at": "2011-06-20T11:34:15Z", "description": "Hello World Examples", "comments": 0, "user": null, "comments_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/comments/", "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 }, "truncated": false } ]

List starred gists

List the authenticated user's starred gists:

“List starred gists”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌不需要任何权限。

“List starred gists”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

查询参数
名称, 类型, 说明
since string

Only show results that were last updated after the given time. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

默认: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

默认: 1

“List starred gists”的 HTTP 响应状态代码

状态代码说明
200

OK

304

Not modified

401

Requires authentication

403

Forbidden

“List starred gists”的示例代码

请求示例

get/gists/starred
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/starred

Response

Status: 200
[ { "url": "https://api.github.com/gists/aa5a315d61ae9438b18d", "forks_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/forks", "commits_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/commits", "id": "aa5a315d61ae9438b18d", "node_id": "MDQ6R2lzdGFhNWEzMTVkNjFhZTk0MzhiMThk", "git_pull_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "git_push_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "html_url": "https://gist.github.com/aa5a315d61ae9438b18d", "files": { "hello_world.rb": { "filename": "hello_world.rb", "type": "application/x-ruby", "language": "Ruby", "raw_url": "https://gist.githubusercontent.com/octocat/6cad326836d38bd3a7ae/raw/db9c55113504e46fa076e7df3a04ce592e2e86d8/hello_world.rb", "size": 167 } }, "public": true, "created_at": "2010-04-14T02:15:15Z", "updated_at": "2011-06-20T11:34:15Z", "description": "Hello World Examples", "comments": 0, "user": null, "comments_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/comments/", "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 }, "truncated": false } ]

Get a gist

Gets a specified gist.

This endpoint supports the following custom media types. For more information, see "Media types."

  • application/vnd.github.raw+json: Returns the raw markdown. This is the default if you do not pass any specific media type.
  • application/vnd.github.base64+json: Returns the base64-encoded contents. This can be useful if your gist contains any invalid UTF-8 sequences.

“Get a gist”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌不需要任何权限。

“Get a gist”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
gist_id string 必须

The unique identifier of the gist.

“Get a gist”的 HTTP 响应状态代码

状态代码说明
200

OK

304

Not modified

403

Forbidden Gist

404

Resource not found

“Get a gist”的示例代码

请求示例

get/gists/{gist_id}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/GIST_ID

Response

Status: 200
{ "url": "https://api.github.com/gists/2decf6c462d9b4418f2", "forks_url": "https://api.github.com/gists/2decf6c462d9b4418f2/forks", "commits_url": "https://api.github.com/gists/2decf6c462d9b4418f2/commits", "id": "2decf6c462d9b4418f2", "node_id": "G_kwDOBhHyLdZDliNDQxOGYy", "git_pull_url": "https://gist.github.com/2decf6c462d9b4418f2.git", "git_push_url": "https://gist.github.com/2decf6c462d9b4418f2.git", "html_url": "https://gist.github.com/2decf6c462d9b4418f2", "files": { "README.md": { "filename": "README.md", "type": "text/markdown", "language": "Markdown", "raw_url": "https://gist.githubusercontent.com/monalisa/2decf6c462d9b4418f2/raw/ac3e6daf176fafe73609fd000cd188e4472010fb/README.md", "size": 23, "truncated": false, "content": "Hello world from GitHub" } }, "public": true, "created_at": "2022-09-20T12:11:58Z", "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", "id": 104456405, "node_id": "U_kgDOBhHyLQ", "avatar_url": "https://avatars.githubusercontent.com/u/104456405?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", "site_admin": true }, "forks": [], "history": [ { "user": { "login": "monalisa", "id": 104456405, "node_id": "U_kgyLQ", "avatar_url": "https://avatars.githubusercontent.com/u/104456405?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", "site_admin": true }, "version": "468aac8caed5f0c3b859b8286968", "committed_at": "2022-09-21T10:28:06Z", "change_status": { "total": 2, "additions": 1, "deletions": 1 }, "url": "https://api.github.com/gists/8481a81af6b7a2d418f2/468aac8caed5f0c3b859b8286968" } ], "truncated": false }

Update a gist

Allows you to update a gist's description and to update, delete, or rename gist files. Files from the previous version of the gist that aren't explicitly changed during an edit are unchanged.

At least one of description or files is required.

This endpoint supports the following custom media types. For more information, see "Media types."

  • application/vnd.github.raw+json: Returns the raw markdown. This is the default if you do not pass any specific media type.
  • application/vnd.github.base64+json: Returns the base64-encoded contents. This can be useful if your gist contains any invalid UTF-8 sequences.

“Update a gist”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌必须具有以下权限集:

  • gists:write

“Update a gist”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
gist_id string 必须

The unique identifier of the gist.

正文参数
名称, 类型, 说明
description string

The description of the gist.

files object

The gist files to be updated, renamed, or deleted. Each key must match the current filename (including extension) of the targeted gist file. For example: hello.py.

To delete a file, set the whole file to null. For example: hello.py : null. The file will also be deleted if the specified object does not contain at least one of content or filename.

名称, 类型, 说明
key object

A user-defined key to represent an item in files.

名称, 类型, 说明
content string

The new content of the file.

filename string or null

The new filename for the file.

“Update a gist”的 HTTP 响应状态代码

状态代码说明
200

OK

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

“Update a gist”的示例代码

请求示例

patch/gists/{gist_id}
curl -L \ -X PATCH \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/GIST_ID \ -d '{"description":"An updated gist description","files":{"README.md":{"content":"Hello World from GitHub"}}}'

Response

Status: 200
{ "url": "https://api.github.com/gists/2decf6c462d9b4418f2", "forks_url": "https://api.github.com/gists/2decf6c462d9b4418f2/forks", "commits_url": "https://api.github.com/gists/2decf6c462d9b4418f2/commits", "id": "2decf6c462d9b4418f2", "node_id": "G_kwDOBhHyLdZDliNDQxOGYy", "git_pull_url": "https://gist.github.com/2decf6c462d9b4418f2.git", "git_push_url": "https://gist.github.com/2decf6c462d9b4418f2.git", "html_url": "https://gist.github.com/2decf6c462d9b4418f2", "files": { "README.md": { "filename": "README.md", "type": "text/markdown", "language": "Markdown", "raw_url": "https://gist.githubusercontent.com/monalisa/2decf6c462d9b4418f2/raw/ac3e6daf176fafe73609fd000cd188e4472010fb/README.md", "size": 23, "truncated": false, "content": "Hello world from GitHub" } }, "public": true, "created_at": "2022-09-20T12:11:58Z", "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", "id": 104456405, "node_id": "U_kgDOBhHyLQ", "avatar_url": "https://avatars.githubusercontent.com/u/104456405?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", "site_admin": true }, "forks": [], "history": [ { "user": { "login": "monalisa", "id": 104456405, "node_id": "U_kgyLQ", "avatar_url": "https://avatars.githubusercontent.com/u/104456405?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", "site_admin": true }, "version": "468aac8caed5f0c3b859b8286968", "committed_at": "2022-09-21T10:28:06Z", "change_status": { "total": 2, "additions": 1, "deletions": 1 }, "url": "https://api.github.com/gists/8481a81af6b7a2d418f2/468aac8caed5f0c3b859b8286968" } ], "truncated": false }

Delete a gist

“Delete a gist”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌必须具有以下权限集:

  • gists:write

“Delete a gist”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
gist_id string 必须

The unique identifier of the gist.

“Delete a gist”的 HTTP 响应状态代码

状态代码说明
204

No Content

304

Not modified

403

Forbidden

404

Resource not found

“Delete a gist”的示例代码

请求示例

delete/gists/{gist_id}
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/GIST_ID

Response

Status: 204

List gist commits

“List gist commits”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌不需要任何权限。

“List gist commits”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
gist_id string 必须

The unique identifier of the gist.

查询参数
名称, 类型, 说明
per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

默认: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

默认: 1

“List gist commits”的 HTTP 响应状态代码

状态代码说明
200

OK

304

Not modified

403

Forbidden

404

Resource not found

“List gist commits”的示例代码

请求示例

get/gists/{gist_id}/commits
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/GIST_ID/commits

Response

Status: 200
[ { "url": "https://api.github.com/gists/aa5a315d61ae9438b18d/57a7f021a713b1c5a6a199b54cc514735d2d462f", "version": "57a7f021a713b1c5a6a199b54cc514735d2d462f", "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 }, "change_status": { "deletions": 0, "additions": 180, "total": 180 }, "committed_at": "2010-04-14T02:15:15Z" } ]

List gist forks

“List gist forks”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌不需要任何权限。

“List gist forks”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
gist_id string 必须

The unique identifier of the gist.

查询参数
名称, 类型, 说明
per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

默认: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

默认: 1

“List gist forks”的 HTTP 响应状态代码

状态代码说明
200

OK

304

Not modified

403

Forbidden

404

Resource not found

“List gist forks”的示例代码

请求示例

get/gists/{gist_id}/forks
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/GIST_ID/forks

Response

Status: 200
[ { "url": "https://api.github.com/gists/aa5a315d61ae9438b18d", "forks_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/forks", "commits_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/commits", "id": "aa5a315d61ae9438b18d", "node_id": "MDQ6R2lzdGFhNWEzMTVkNjFhZTk0MzhiMThk", "git_pull_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "git_push_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "html_url": "https://gist.github.com/aa5a315d61ae9438b18d", "files": { "hello_world.rb": { "filename": "hello_world.rb", "type": "application/x-ruby", "language": "Ruby", "raw_url": "https://gist.githubusercontent.com/octocat/6cad326836d38bd3a7ae/raw/db9c55113504e46fa076e7df3a04ce592e2e86d8/hello_world.rb", "size": 167 } }, "public": true, "created_at": "2010-04-14T02:15:15Z", "updated_at": "2011-06-20T11:34:15Z", "description": "Hello World Examples", "comments": 1, "user": null, "comments_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/comments/", "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 } } ]

Fork a gist

“Fork a gist”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌必须具有以下权限集:

  • gists:write

“Fork a gist”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
gist_id string 必须

The unique identifier of the gist.

“Fork a gist”的 HTTP 响应状态代码

状态代码说明
201

Created

304

Not modified

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

“Fork a gist”的示例代码

请求示例

post/gists/{gist_id}/forks
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/GIST_ID/forks

Response

Status: 201
{ "url": "https://api.github.com/gists/aa5a315d61ae9438b18d", "forks_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/forks", "commits_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/commits", "id": "aa5a315d61ae9438b18d", "node_id": "MDQ6R2lzdGFhNWEzMTVkNjFhZTk0MzhiMThk", "git_pull_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "git_push_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "html_url": "https://gist.github.com/aa5a315d61ae9438b18d", "files": { "hello_world.rb": { "filename": "hello_world.rb", "type": "application/x-ruby", "language": "Ruby", "raw_url": "https://gist.githubusercontent.com/octocat/6cad326836d38bd3a7ae/raw/db9c55113504e46fa076e7df3a04ce592e2e86d8/hello_world.rb", "size": 167 } }, "public": true, "created_at": "2010-04-14T02:15:15Z", "updated_at": "2011-06-20T11:34:15Z", "description": "Hello World Examples", "comments": 0, "user": null, "comments_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/comments/", "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 }, "truncated": false }

Check if a gist is starred

“Check if a gist is starred”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌不需要任何权限。

“Check if a gist is starred”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
gist_id string 必须

The unique identifier of the gist.

“Check if a gist is starred”的 HTTP 响应状态代码

状态代码说明
204

Response if gist is starred

304

Not modified

403

Forbidden

404

Not Found if gist is not starred

“Check if a gist is starred”的示例代码

请求示例

get/gists/{gist_id}/star
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/GIST_ID/star

Response if gist is starred

Status: 204

Star a gist

Note that you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see "HTTP method."

“Star a gist”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌必须具有以下权限集:

  • gists:write

“Star a gist”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
gist_id string 必须

The unique identifier of the gist.

“Star a gist”的 HTTP 响应状态代码

状态代码说明
204

No Content

304

Not modified

403

Forbidden

404

Resource not found

“Star a gist”的示例代码

请求示例

put/gists/{gist_id}/star
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/GIST_ID/star

Response

Status: 204

Unstar a gist

“Unstar a gist”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌必须具有以下权限集:

  • gists:write

“Unstar a gist”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
gist_id string 必须

The unique identifier of the gist.

“Unstar a gist”的 HTTP 响应状态代码

状态代码说明
204

No Content

304

Not modified

403

Forbidden

404

Resource not found

“Unstar a gist”的示例代码

请求示例

delete/gists/{gist_id}/star
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/GIST_ID/star

Response

Status: 204

Get a gist revision

Gets a specified gist revision.

This endpoint supports the following custom media types. For more information, see "Media types."

  • application/vnd.github.raw+json: Returns the raw markdown. This is the default if you do not pass any specific media type.
  • application/vnd.github.base64+json: Returns the base64-encoded contents. This can be useful if your gist contains any invalid UTF-8 sequences.

“Get a gist revision”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌不需要任何权限。

“Get a gist revision”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
gist_id string 必须

The unique identifier of the gist.

sha string 必须

“Get a gist revision”的 HTTP 响应状态代码

状态代码说明
200

OK

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

“Get a gist revision”的示例代码

请求示例

get/gists/{gist_id}/{sha}
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/gists/GIST_ID/SHA

Response

Status: 200
{ "url": "https://api.github.com/gists/2decf6c462d9b4418f2", "forks_url": "https://api.github.com/gists/2decf6c462d9b4418f2/forks", "commits_url": "https://api.github.com/gists/2decf6c462d9b4418f2/commits", "id": "2decf6c462d9b4418f2", "node_id": "G_kwDOBhHyLdZDliNDQxOGYy", "git_pull_url": "https://gist.github.com/2decf6c462d9b4418f2.git", "git_push_url": "https://gist.github.com/2decf6c462d9b4418f2.git", "html_url": "https://gist.github.com/2decf6c462d9b4418f2", "files": { "README.md": { "filename": "README.md", "type": "text/markdown", "language": "Markdown", "raw_url": "https://gist.githubusercontent.com/monalisa/2decf6c462d9b4418f2/raw/ac3e6daf176fafe73609fd000cd188e4472010fb/README.md", "size": 23, "truncated": false, "content": "Hello world from GitHub" } }, "public": true, "created_at": "2022-09-20T12:11:58Z", "updated_at": "2022-09-21T10:28:06Z", "description": "An updated gist description.", "comments": 0, "user": null, "comments_url": "https://api.github.com/gists/2decf6c462d9b4418f2/comments", "owner": { "login": "monalisa", "id": 104456405, "node_id": "U_kgDOBhHyLQ", "avatar_url": "https://avatars.githubusercontent.com/u/104456405?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", "site_admin": true }, "forks": [], "history": [ { "user": { "login": "monalisa", "id": 104456405, "node_id": "U_kgyLQ", "avatar_url": "https://avatars.githubusercontent.com/u/104456405?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", "site_admin": true }, "version": "468aac8caed5f0c3b859b8286968", "committed_at": "2022-09-21T10:28:06Z", "change_status": { "total": 2, "additions": 1, "deletions": 1 }, "url": "https://api.github.com/gists/8481a81af6b7a2d418f2/468aac8caed5f0c3b859b8286968" } ], "truncated": false }

List gists for a user

Lists public gists for the specified user:

“List gists for a user”的细粒度访问令牌

此终结点适用于以下令牌类型:

令牌不需要任何权限。

“List gists for a user”的参数

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
username string 必须

The handle for the GitHub user account.

查询参数
名称, 类型, 说明
since string

Only show results that were last updated after the given time. This is a timestamp in ISO 8601 format: YYYY-MM-DDTHH:MM:SSZ.

per_page integer

The number of results per page (max 100). For more information, see "Using pagination in the REST API."

默认: 30

page integer

The page number of the results to fetch. For more information, see "Using pagination in the REST API."

默认: 1

“List gists for a user”的 HTTP 响应状态代码

状态代码说明
200

OK

422

Validation failed, or the endpoint has been spammed.

“List gists for a user”的示例代码

请求示例

get/users/{username}/gists
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/users/USERNAME/gists

Response

Status: 200
[ { "url": "https://api.github.com/gists/aa5a315d61ae9438b18d", "forks_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/forks", "commits_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/commits", "id": "aa5a315d61ae9438b18d", "node_id": "MDQ6R2lzdGFhNWEzMTVkNjFhZTk0MzhiMThk", "git_pull_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "git_push_url": "https://gist.github.com/aa5a315d61ae9438b18d.git", "html_url": "https://gist.github.com/aa5a315d61ae9438b18d", "files": { "hello_world.rb": { "filename": "hello_world.rb", "type": "application/x-ruby", "language": "Ruby", "raw_url": "https://gist.githubusercontent.com/octocat/6cad326836d38bd3a7ae/raw/db9c55113504e46fa076e7df3a04ce592e2e86d8/hello_world.rb", "size": 167 } }, "public": true, "created_at": "2010-04-14T02:15:15Z", "updated_at": "2011-06-20T11:34:15Z", "description": "Hello World Examples", "comments": 0, "user": null, "comments_url": "https://api.github.com/gists/aa5a315d61ae9438b18d/comments/", "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 }, "truncated": false } ]