Skip to content

Create a gist

POST
/gists

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.

API method documentation

Media type application/json
object
description

Description of the gist

string
files
required

Names and content for the files that make up the gist

object
key
additional properties
object
content
required

Content of the file

string
public
One of:

Flag indicating whether the gist is public

boolean
Examples
Example default

Creating a gist

{
"description": "Example of a gist",
"public": false,
"files": {
"README.md": {
"content": "Hello World"
}
}
}

Response

Media type application/json
Gist Simple

Gist Simple

object
forks
Array<object>
nullable
object
id
string
url
string format: uri
user
Public User

Public User

object
login
required
string
id
required
integer format: int64
user_view_type
string
node_id
required
string
avatar_url
required
string format: uri
gravatar_id
required
string
nullable
url
required
string format: uri
html_url
required
string format: uri
followers_url
required
string format: uri
following_url
required
string
gists_url
required
string
starred_url
required
string
subscriptions_url
required
string format: uri
organizations_url
required
string format: uri
repos_url
required
string format: uri
events_url
required
string
received_events_url
required
string format: uri
type
required
string
site_admin
required
boolean
name
required
string
nullable
company
required
string
nullable
blog
required
string
nullable
location
required
string
nullable
email
required
string format: email
nullable
notification_email
string format: email
nullable
hireable
required
boolean
nullable
bio
required
string
nullable
twitter_username
string
nullable
public_repos
required
integer
public_gists
required
integer
followers
required
integer
following
required
integer
created_at
required
string format: date-time
updated_at
required
string format: date-time
plan
object
collaborators
required
integer
name
required
string
space
required
integer
private_repos
required
integer
private_gists
integer
total_private_repos
integer
owned_private_repos
integer
disk_usage
integer
collaborators
integer
created_at
string format: date-time
updated_at
string format: date-time
history
Array<object>
nullable
Gist History

Gist History

object
user
Simple User

A GitHub user.

object
name
string
nullable
email
string
nullable
login
required
string
id
required
integer format: int64
node_id
required
string
avatar_url
required
string format: uri
gravatar_id
required
string
nullable
url
required
string format: uri
html_url
required
string format: uri
followers_url
required
string format: uri
following_url
required
string
gists_url
required
string
starred_url
required
string
subscriptions_url
required
string format: uri
organizations_url
required
string format: uri
repos_url
required
string format: uri
events_url
required
string
received_events_url
required
string format: uri
type
required
string
site_admin
required
boolean
starred_at
string
user_view_type
string
version
string
committed_at
string format: date-time
change_status
object
total
integer
additions
integer
deletions
integer
url
string format: uri
fork_of
Gist

Gist

object
url
required
string format: uri
forks_url
required
string format: uri
commits_url
required
string format: uri
id
required
string
node_id
required
string
git_pull_url
required
string format: uri
git_push_url
required
string format: uri
html_url
required
string format: uri
files
required
object
key
additional properties
object
filename
string
type
string
language
string
raw_url
string
size
integer
public
required
boolean
created_at
required
string format: date-time
updated_at
required
string format: date-time
description
required
string
nullable
comments
required
integer
comments_enabled
boolean
user
required
Simple User

A GitHub user.

object
name
string
nullable
email
string
nullable
login
required
string
id
required
integer format: int64
node_id
required
string
avatar_url
required
string format: uri
gravatar_id
required
string
nullable
url
required
string format: uri
html_url
required
string format: uri
followers_url
required
string format: uri
following_url
required
string
gists_url
required
string
starred_url
required
string
subscriptions_url
required
string format: uri
organizations_url
required
string format: uri
repos_url
required
string format: uri
events_url
required
string
received_events_url
required
string format: uri
type
required
string
site_admin
required
boolean
starred_at
string
user_view_type
string
comments_url
required
string format: uri
owner
Simple User

A GitHub user.

object
name
string
nullable
email
string
nullable
login
required
string
id
required
integer format: int64
node_id
required
string
avatar_url
required
string format: uri
gravatar_id
required
string
nullable
url
required
string format: uri
html_url
required
string format: uri
followers_url
required
string format: uri
following_url
required
string
gists_url
required
string
starred_url
required
string
subscriptions_url
required
string format: uri
organizations_url
required
string format: uri
repos_url
required
string format: uri
events_url
required
string
received_events_url
required
string format: uri
type
required
string
site_admin
required
boolean
starred_at
string
user_view_type
string
truncated
boolean
forks
Array
history
Array
url
string
forks_url
string
commits_url
string
id
string
node_id
string
git_pull_url
string
git_push_url
string
html_url
string
files
object
key
additional properties
object
filename
string
type
string
language
string
raw_url
string
size
integer
truncated
boolean
content
string
encoding

The encoding used for content. Currently, "utf-8" and "base64" are supported.

string
default: utf-8
public
boolean
created_at
string
updated_at
string
description
string
nullable
comments
integer
comments_enabled
boolean
user
string
nullable
comments_url
string
owner
Simple User

A GitHub user.

object
name
string
nullable
email
string
nullable
login
required
string
id
required
integer format: int64
node_id
required
string
avatar_url
required
string format: uri
gravatar_id
required
string
nullable
url
required
string format: uri
html_url
required
string format: uri
followers_url
required
string format: uri
following_url
required
string
gists_url
required
string
starred_url
required
string
subscriptions_url
required
string format: uri
organizations_url
required
string format: uri
repos_url
required
string format: uri
events_url
required
string
received_events_url
required
string format: uri
type
required
string
site_admin
required
boolean
starred_at
string
user_view_type
string
truncated
boolean
Examples
Example default
{
"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",
"encoding": "utf-8"
}
},
"public": true,
"created_at": "2022-09-20T12:11:58Z",
"updated_at": "2022-09-21T10:28:06Z",
"description": "An updated gist description.",
"comments": 0,
"comments_enabled": true,
"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
}
Location
string
Example
https://api.github.com/gists/aa5a315d61ae9438b18d

Not modified

Forbidden

Media type application/json
Basic Error

Basic Error

object
message
string
documentation_url
string
url
string
status
string
Example generated
{
"message": "example",
"documentation_url": "example",
"url": "example",
"status": "example"
}

Resource not found

Media type application/json
Basic Error

Basic Error

object
message
string
documentation_url
string
url
string
status
string
Example generated
{
"message": "example",
"documentation_url": "example",
"url": "example",
"status": "example"
}

Validation failed, or the endpoint has been spammed.

Media type application/json
Validation Error

Validation Error

object
message
required
string
documentation_url
required
string
errors
Array<object>
object
resource
string
field
string
message
string
code
required
string
index
integer
value
One of:
string
nullable
Example generated
{
"message": "example",
"documentation_url": "example",
"errors": [
{
"resource": "example",
"field": "example",
"message": "example",
"code": "example",
"index": 1,
"value": [
"example"
]
}
]
}