This version of GitHub Enterprise was discontinued on 2023-03-15. No patch releases will be made, even for critical security issues. For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise. For help with the upgrade, contact GitHub Enterprise support.
Pages
Use the REST API to interact with GitHub Pages sites and builds.
Get a GitHub Enterprise Server Pages site
Gets information about a GitHub Enterprise Server Pages site.
A token with the repo scope is required. GitHub Apps must have the pages:read permission.
Parameters for "Get a GitHub Enterprise Server Pages site"
| Headers | 
|---|
| Name, Type, Description | 
| acceptstringSetting to  | 
| Path parameters | 
| Name, Type, Description | 
| ownerstring RequiredThe account owner of the repository. The name is not case sensitive. | 
| repostring RequiredThe name of the repository without the  | 
HTTP response status codes for "Get a GitHub Enterprise Server Pages site"
| Status code | Description | 
|---|---|
| 200 | OK | 
| 404 | Resource not found | 
Code samples for "Get a GitHub Enterprise Server Pages site"
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pagesResponse
Status: 200{
  "url": "https://HOSTNAME/repos/github/developer.github.com/pages",
  "status": "built",
  "cname": "developer.github.com",
  "custom_404": false,
  "html_url": "https://developer.github.com",
  "source": {
    "branch": "master",
    "path": "/"
  },
  "public": true,
  "https_certificate": {
    "state": "approved",
    "description": "Certificate is approved",
    "domains": [
      "developer.github.com"
    ],
    "expires_at": "2021-05-22"
  },
  "https_enforced": true
}Create a GitHub Enterprise Server Pages site
Configures a GitHub Enterprise Server Pages site. For more information, see "About GitHub Pages."
To use this endpoint, you must be a repository administrator, maintainer, or have the 'manage GitHub Pages settings' permission. A token with the repo scope or Pages write permission is required. GitHub Apps must have the administration:write and pages:write permissions.
Parameters for "Create a GitHub Enterprise Server Pages site"
| Headers | ||||||
|---|---|---|---|---|---|---|
| Name, Type, Description | ||||||
| acceptstringSetting to  | ||||||
| Path parameters | ||||||
| Name, Type, Description | ||||||
| ownerstring RequiredThe account owner of the repository. The name is not case sensitive. | ||||||
| repostring RequiredThe name of the repository without the  | ||||||
| Body parameters | ||||||
| Name, Type, Description | ||||||
| build_typestringThe process in which the Page will be built. Possible values are  Can be one of:  | ||||||
| sourceobjectThe source branch and directory used to publish your Pages site. | ||||||
| Properties of  | ||||||
| Name, Type, Description | 
|---|
| branchstring RequiredThe repository branch used to publish your site's source files. | 
| pathstringThe repository directory that includes the source files for the Pages site. Allowed paths are  Default:  Can be one of:  | 
HTTP response status codes for "Create a GitHub Enterprise Server Pages site"
| Status code | Description | 
|---|---|
| 201 | Created | 
| 409 | Conflict | 
| 422 | Validation failed, or the endpoint has been spammed. | 
Code samples for "Create a GitHub Enterprise Server Pages site"
curl -L \
  -X POST \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pages \
  -d '{"source":{"branch":"main","path":"/docs"}}'Response
Status: 201{
  "url": "https://HOSTNAME/repos/github/developer.github.com/pages",
  "status": "built",
  "cname": "developer.github.com",
  "custom_404": false,
  "html_url": "https://developer.github.com",
  "source": {
    "branch": "master",
    "path": "/"
  },
  "public": true,
  "https_certificate": {
    "state": "approved",
    "description": "Certificate is approved",
    "domains": [
      "developer.github.com"
    ],
    "expires_at": "2021-05-22"
  },
  "https_enforced": true
}Update information about a GitHub Enterprise Server Pages site
Updates information for a GitHub Enterprise Server Pages site. For more information, see "About GitHub Pages.
To use this endpoint, you must be a repository administrator, maintainer, or have the 'manage GitHub Pages settings' permission. A token with the repo scope or Pages write permission is required. GitHub Apps must have the administration:write and pages:write permissions.
Parameters for "Update information about a GitHub Enterprise Server Pages site"
| Headers | ||||||
|---|---|---|---|---|---|---|
| Name, Type, Description | ||||||
| acceptstringSetting to  | ||||||
| Path parameters | ||||||
| Name, Type, Description | ||||||
| ownerstring RequiredThe account owner of the repository. The name is not case sensitive. | ||||||
| repostring RequiredThe name of the repository without the  | ||||||
| Body parameters | ||||||
| Name, Type, Description | ||||||
| cnamestring or nullSpecify a custom domain for the repository. Sending a  | ||||||
| https_enforcedbooleanSpecify whether HTTPS should be enforced for the repository. | ||||||
| build_typestringThe process by which the GitHub Pages site will be built.  Can be one of:  | ||||||
| sourceobjectUpdate the source for the repository. Must include the branch name and path. | ||||||
| Properties of  | ||||||
| Name, Type, Description | 
|---|
| branchstring RequiredThe repository branch used to publish your site's source files. | 
| pathstring RequiredThe repository directory that includes the source files for the Pages site. Allowed paths are  Can be one of:  | 
HTTP response status codes for "Update information about a GitHub Enterprise Server Pages site"
| Status code | Description | 
|---|---|
| 204 | No Content | 
| 400 | Bad Request | 
| 409 | Conflict | 
| 422 | Validation failed, or the endpoint has been spammed. | 
Code samples for "Update information about a GitHub Enterprise Server Pages site"
curl -L \
  -X PUT \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pages \
  -d '{"cname":"octocatblog.com","source":{"branch":"main","path":"/"}}'Response
Status: 204Delete a GitHub Enterprise Server Pages site
Deletes a GitHub Enterprise Server Pages site. For more information, see "About GitHub Pages.
To use this endpoint, you must be a repository administrator, maintainer, or have the 'manage GitHub Pages settings' permission. A token with the repo scope or Pages write permission is required. GitHub Apps must have the administration:write and pages:write permissions.
Parameters for "Delete a GitHub Enterprise Server Pages site"
| Headers | 
|---|
| Name, Type, Description | 
| acceptstringSetting to  | 
| Path parameters | 
| Name, Type, Description | 
| ownerstring RequiredThe account owner of the repository. The name is not case sensitive. | 
| repostring RequiredThe name of the repository without the  | 
HTTP response status codes for "Delete a GitHub Enterprise Server Pages site"
| Status code | Description | 
|---|---|
| 204 | No Content | 
| 404 | Resource not found | 
| 409 | Conflict | 
| 422 | Validation failed, or the endpoint has been spammed. | 
Code samples for "Delete a GitHub Enterprise Server Pages site"
curl -L \
  -X DELETE \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pagesResponse
Status: 204List GitHub Enterprise Server Pages builds
Lists builts of a GitHub Enterprise Server Pages site.
A token with the repo scope is required. GitHub Apps must have the pages:read permission.
Parameters for "List GitHub Enterprise Server Pages builds"
| Headers | 
|---|
| Name, Type, Description | 
| acceptstringSetting to  | 
| Path parameters | 
| Name, Type, Description | 
| ownerstring RequiredThe account owner of the repository. The name is not case sensitive. | 
| repostring RequiredThe name of the repository without the  | 
| Query parameters | 
| Name, Type, Description | 
| per_pageintegerThe number of results per page (max 100). Default:  | 
| pageintegerPage number of the results to fetch. Default:  | 
HTTP response status codes for "List GitHub Enterprise Server Pages builds"
| Status code | Description | 
|---|---|
| 200 | OK | 
Code samples for "List GitHub Enterprise Server Pages builds"
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pages/buildsResponse
Status: 200[
  {
    "url": "https://HOSTNAME/repos/github/developer.github.com/pages/builds/5472601",
    "status": "built",
    "error": {
      "message": null
    },
    "pusher": {
      "login": "octocat",
      "id": 1,
      "node_id": "MDQ6VXNlcjE=",
      "avatar_url": "https://github.com/images/error/octocat_happy.gif",
      "gravatar_id": "",
      "url": "https://HOSTNAME/users/octocat",
      "html_url": "https://github.com/octocat",
      "followers_url": "https://HOSTNAME/users/octocat/followers",
      "following_url": "https://HOSTNAME/users/octocat/following{/other_user}",
      "gists_url": "https://HOSTNAME/users/octocat/gists{/gist_id}",
      "starred_url": "https://HOSTNAME/users/octocat/starred{/owner}{/repo}",
      "subscriptions_url": "https://HOSTNAME/users/octocat/subscriptions",
      "organizations_url": "https://HOSTNAME/users/octocat/orgs",
      "repos_url": "https://HOSTNAME/users/octocat/repos",
      "events_url": "https://HOSTNAME/users/octocat/events{/privacy}",
      "received_events_url": "https://HOSTNAME/users/octocat/received_events",
      "type": "User",
      "site_admin": false
    },
    "commit": "351391cdcb88ffae71ec3028c91f375a8036a26b",
    "duration": 2104,
    "created_at": "2014-02-10T19:00:49Z",
    "updated_at": "2014-02-10T19:00:51Z"
  }
]Request a GitHub Enterprise Server Pages build
You can request that your site be built from the latest revision on the default branch. This has the same effect as pushing a commit to your default branch, but does not require an additional commit. Manually triggering page builds can be helpful when diagnosing build warnings and failures.
Build requests are limited to one concurrent build per repository and one concurrent build per requester. If you request a build while another is still in progress, the second request will be queued until the first completes.
Parameters for "Request a GitHub Enterprise Server Pages build"
| Headers | 
|---|
| Name, Type, Description | 
| acceptstringSetting to  | 
| Path parameters | 
| Name, Type, Description | 
| ownerstring RequiredThe account owner of the repository. The name is not case sensitive. | 
| repostring RequiredThe name of the repository without the  | 
HTTP response status codes for "Request a GitHub Enterprise Server Pages build"
| Status code | Description | 
|---|---|
| 201 | Created | 
Code samples for "Request a GitHub Enterprise Server Pages build"
curl -L \
  -X POST \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pages/buildsResponse
Status: 201{
  "url": "https://HOSTNAME/repos/github/developer.github.com/pages/builds/latest",
  "status": "queued"
}Get latest Pages build
Gets information about the single most recent build of a GitHub Enterprise Server Pages site.
A token with the repo scope is required. GitHub Apps must have the pages:read permission.
Parameters for "Get latest Pages build"
| Headers | 
|---|
| Name, Type, Description | 
| acceptstringSetting to  | 
| Path parameters | 
| Name, Type, Description | 
| ownerstring RequiredThe account owner of the repository. The name is not case sensitive. | 
| repostring RequiredThe name of the repository without the  | 
HTTP response status codes for "Get latest Pages build"
| Status code | Description | 
|---|---|
| 200 | OK | 
Code samples for "Get latest Pages build"
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pages/builds/latestResponse
Status: 200{
  "url": "https://HOSTNAME/repos/github/developer.github.com/pages/builds/5472601",
  "status": "built",
  "error": {
    "message": null
  },
  "pusher": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://HOSTNAME/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://HOSTNAME/users/octocat/followers",
    "following_url": "https://HOSTNAME/users/octocat/following{/other_user}",
    "gists_url": "https://HOSTNAME/users/octocat/gists{/gist_id}",
    "starred_url": "https://HOSTNAME/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://HOSTNAME/users/octocat/subscriptions",
    "organizations_url": "https://HOSTNAME/users/octocat/orgs",
    "repos_url": "https://HOSTNAME/users/octocat/repos",
    "events_url": "https://HOSTNAME/users/octocat/events{/privacy}",
    "received_events_url": "https://HOSTNAME/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  },
  "commit": "351391cdcb88ffae71ec3028c91f375a8036a26b",
  "duration": 2104,
  "created_at": "2014-02-10T19:00:49Z",
  "updated_at": "2014-02-10T19:00:51Z"
}Get GitHub Enterprise Server Pages build
Gets information about a GitHub Enterprise Server Pages build.
A token with the repo scope is required. GitHub Apps must have the pages:read permission.
Parameters for "Get GitHub Enterprise Server Pages build"
| Headers | 
|---|
| Name, Type, Description | 
| acceptstringSetting to  | 
| Path parameters | 
| Name, Type, Description | 
| ownerstring RequiredThe account owner of the repository. The name is not case sensitive. | 
| repostring RequiredThe name of the repository without the  | 
| build_idinteger Required | 
HTTP response status codes for "Get GitHub Enterprise Server Pages build"
| Status code | Description | 
|---|---|
| 200 | OK | 
Code samples for "Get GitHub Enterprise Server Pages build"
curl -L \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer <YOUR-TOKEN>" \
  http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/pages/builds/BUILD_IDResponse
Status: 200{
  "url": "https://HOSTNAME/repos/github/developer.github.com/pages/builds/5472601",
  "status": "built",
  "error": {
    "message": null
  },
  "pusher": {
    "login": "octocat",
    "id": 1,
    "node_id": "MDQ6VXNlcjE=",
    "avatar_url": "https://github.com/images/error/octocat_happy.gif",
    "gravatar_id": "",
    "url": "https://HOSTNAME/users/octocat",
    "html_url": "https://github.com/octocat",
    "followers_url": "https://HOSTNAME/users/octocat/followers",
    "following_url": "https://HOSTNAME/users/octocat/following{/other_user}",
    "gists_url": "https://HOSTNAME/users/octocat/gists{/gist_id}",
    "starred_url": "https://HOSTNAME/users/octocat/starred{/owner}{/repo}",
    "subscriptions_url": "https://HOSTNAME/users/octocat/subscriptions",
    "organizations_url": "https://HOSTNAME/users/octocat/orgs",
    "repos_url": "https://HOSTNAME/users/octocat/repos",
    "events_url": "https://HOSTNAME/users/octocat/events{/privacy}",
    "received_events_url": "https://HOSTNAME/users/octocat/received_events",
    "type": "User",
    "site_admin": false
  },
  "commit": "351391cdcb88ffae71ec3028c91f375a8036a26b",
  "duration": 2104,
  "created_at": "2014-02-10T19:00:49Z",
  "updated_at": "2014-02-10T19:00:51Z"
}