Skip to main content
Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais atualizadas, acesse a documentação em inglês.
O controle de versão da API REST já foi feito. Para obter mais informações, confira "Sobre o controle de versão da API".

Páginas

Use a API REST para interagir com os sites e compilações do GitHub Pages.

Get a GitHub Enterprise Cloud Pages site

Funciona com GitHub Apps

Parâmetros

Cabeçalhos
Nome, Type, Descrição
acceptstring

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

Parâmetros de caminho
Nome, Type, Descrição
ownerstringObrigatório

The account owner of the repository. The name is not case sensitive.

repostringObrigatório

The name of the repository. The name is not case sensitive.

Códigos de status de resposta HTTP

Código de statusDescrição
200

OK

404

Resource not found

Exemplos de código

get/repos/{owner}/{repo}/pages
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/pages

Response

Status: 200
{ "url": "https://api.github.com/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 Cloud Pages site

Funciona com GitHub Apps

Configures a GitHub Enterprise Cloud 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.

Parâmetros

Cabeçalhos
Nome, Type, Descrição
acceptstring

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

Parâmetros de caminho
Nome, Type, Descrição
ownerstringObrigatório

The account owner of the repository. The name is not case sensitive.

repostringObrigatório

The name of the repository. The name is not case sensitive.

Parâmetros do corpo
Nome, Type, Descrição
build_typestring

The process in which the Page will be built. Possible values are "legacy" and "workflow".

Pode ser um dos: legacy, workflow

sourceobject

The source branch and directory used to publish your Pages site.

Nome, Type, Descrição
branchstringObrigatório

The repository branch used to publish your site's source files.

pathstring

The repository directory that includes the source files for the Pages site. Allowed paths are / or /docs. Default: /

Padrão: /

Pode ser um dos: /, /docs

Códigos de status de resposta HTTP

Código de statusDescrição
201

Created

409

Conflict

422

Validation failed, or the endpoint has been spammed.

Exemplos de código

post/repos/{owner}/{repo}/pages
curl \ -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/repos/OWNER/REPO/pages \ -d '{"source":{"branch":"main","path":"/docs"}}'

Response

Status: 201
{ "url": "https://api.github.com/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 Cloud Pages site

Funciona com GitHub Apps

Updates information for a GitHub Enterprise Cloud 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.

Parâmetros

Cabeçalhos
Nome, Type, Descrição
acceptstring

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

Parâmetros de caminho
Nome, Type, Descrição
ownerstringObrigatório

The account owner of the repository. The name is not case sensitive.

repostringObrigatório

The name of the repository. The name is not case sensitive.

Parâmetros do corpo
Nome, Type, Descrição
cnamestring or null

Specify a custom domain for the repository. Sending a null value will remove the custom domain. For more about custom domains, see "Using a custom domain with GitHub Pages."

https_enforcedboolean

Specify whether HTTPS should be enforced for the repository.

build_typestring

The process by which the GitHub Pages site will be built. workflow means that the site is built by a custom GitHub Actions workflow. legacy means that the site is built by GitHub when changes are pushed to a specific branch.

Pode ser um dos: legacy, workflow

sourceobject

Update the source for the repository. Must include the branch name and path.

Nome, Type, Descrição
branchstringObrigatório

The repository branch used to publish your site's source files.

pathstringObrigatório

The repository directory that includes the source files for the Pages site. Allowed paths are / or /docs.

Pode ser um dos: /, /docs

publicboolean

Configures access controls for the GitHub Pages site. If public is set to true, the site is accessible to anyone on the internet. If set to false, the site will only be accessible to users who have at least read access to the repository that published the site. This includes anyone in your Enterprise if the repository is set to internal visibility.

Códigos de status de resposta HTTP

Código de statusDescrição
204

No Content

400

Bad Request

409

Conflict

422

Validation failed, or the endpoint has been spammed.

Exemplos de código

put/repos/{owner}/{repo}/pages
curl \ -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/repos/OWNER/REPO/pages \ -d '{"cname":"octocatblog.com","source":{"branch":"main","path":"/"}}'

Response

Status: 204

Delete a GitHub Enterprise Cloud Pages site

Funciona com GitHub Apps

Deletes a GitHub Enterprise Cloud 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.

Parâmetros

Cabeçalhos
Nome, Type, Descrição
acceptstring

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

Parâmetros de caminho
Nome, Type, Descrição
ownerstringObrigatório

The account owner of the repository. The name is not case sensitive.

repostringObrigatório

The name of the repository. The name is not case sensitive.

Códigos de status de resposta HTTP

Código de statusDescrição
204

No Content

404

Resource not found

409

Conflict

422

Validation failed, or the endpoint has been spammed.

Exemplos de código

delete/repos/{owner}/{repo}/pages
curl \ -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/repos/OWNER/REPO/pages

Response

Status: 204

List GitHub Enterprise Cloud Pages builds

Funciona com GitHub Apps

Parâmetros

Cabeçalhos
Nome, Type, Descrição
acceptstring

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

Parâmetros de caminho
Nome, Type, Descrição
ownerstringObrigatório

The account owner of the repository. The name is not case sensitive.

repostringObrigatório

The name of the repository. The name is not case sensitive.

Parâmetros de consulta
Nome, Type, Descrição
per_pageinteger

The number of results per page (max 100).

Padrão: 30

pageinteger

Page number of the results to fetch.

Padrão: 1

Códigos de status de resposta HTTP

Código de statusDescrição
200

OK

Exemplos de código

get/repos/{owner}/{repo}/pages/builds
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/pages/builds

Response

Status: 200
[ { "url": "https://api.github.com/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://api.github.com/users/octocat", "html_url": "https://github.com/octocat", "followers_url": "https://api.github.com/users/octocat/followers", "following_url": "https://api.github.com/users/octocat/following{/other_user}", "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", "organizations_url": "https://api.github.com/users/octocat/orgs", "repos_url": "https://api.github.com/users/octocat/repos", "events_url": "https://api.github.com/users/octocat/events{/privacy}", "received_events_url": "https://api.github.com/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 Cloud Pages build

Funciona com GitHub Apps

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.

Parâmetros

Cabeçalhos
Nome, Type, Descrição
acceptstring

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

Parâmetros de caminho
Nome, Type, Descrição
ownerstringObrigatório

The account owner of the repository. The name is not case sensitive.

repostringObrigatório

The name of the repository. The name is not case sensitive.

Códigos de status de resposta HTTP

Código de statusDescrição
201

Created

Exemplos de código

post/repos/{owner}/{repo}/pages/builds
curl \ -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/repos/OWNER/REPO/pages/builds

Response

Status: 201
{ "url": "https://api.github.com/repos/github/developer.github.com/pages/builds/latest", "status": "queued" }

Get latest Pages build

Funciona com GitHub Apps

Parâmetros

Cabeçalhos
Nome, Type, Descrição
acceptstring

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

Parâmetros de caminho
Nome, Type, Descrição
ownerstringObrigatório

The account owner of the repository. The name is not case sensitive.

repostringObrigatório

The name of the repository. The name is not case sensitive.

Códigos de status de resposta HTTP

Código de statusDescrição
200

OK

Exemplos de código

get/repos/{owner}/{repo}/pages/builds/latest
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/pages/builds/latest

Response

Status: 200
{ "url": "https://api.github.com/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://api.github.com/users/octocat", "html_url": "https://github.com/octocat", "followers_url": "https://api.github.com/users/octocat/followers", "following_url": "https://api.github.com/users/octocat/following{/other_user}", "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", "organizations_url": "https://api.github.com/users/octocat/orgs", "repos_url": "https://api.github.com/users/octocat/repos", "events_url": "https://api.github.com/users/octocat/events{/privacy}", "received_events_url": "https://api.github.com/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 Cloud Pages build

Funciona com GitHub Apps

Parâmetros

Cabeçalhos
Nome, Type, Descrição
acceptstring

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

Parâmetros de caminho
Nome, Type, Descrição
ownerstringObrigatório

The account owner of the repository. The name is not case sensitive.

repostringObrigatório

The name of the repository. The name is not case sensitive.

build_idintegerObrigatório

Códigos de status de resposta HTTP

Código de statusDescrição
200

OK

Exemplos de código

get/repos/{owner}/{repo}/pages/builds/{build_id}
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/pages/builds/BUILD_ID

Response

Status: 200
{ "url": "https://api.github.com/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://api.github.com/users/octocat", "html_url": "https://github.com/octocat", "followers_url": "https://api.github.com/users/octocat/followers", "following_url": "https://api.github.com/users/octocat/following{/other_user}", "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", "organizations_url": "https://api.github.com/users/octocat/orgs", "repos_url": "https://api.github.com/users/octocat/repos", "events_url": "https://api.github.com/users/octocat/events{/privacy}", "received_events_url": "https://api.github.com/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" }

Create a GitHub Pages deployment

Funciona com GitHub Apps

Create a GitHub Pages deployment for a repository.

Users must have write permissions. GitHub Apps must have the pages:write permission to use this endpoint.

Parâmetros

Cabeçalhos
Nome, Type, Descrição
acceptstring

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

Parâmetros de caminho
Nome, Type, Descrição
ownerstringObrigatório

The account owner of the repository. The name is not case sensitive.

repostringObrigatório

The name of the repository. The name is not case sensitive.

Parâmetros do corpo
Nome, Type, Descrição
artifact_urlstringObrigatório

The URL of an artifact that contains the .zip or .tar of static assets to deploy. The artifact belongs to the repository.

environmentstring

The target environment for this GitHub Pages deployment.

Padrão: github-pages

pages_build_versionstringObrigatório

A unique string that represents the version of the build for this deployment.

Padrão: GITHUB_SHA

oidc_tokenstringObrigatório

The OIDC token issued by GitHub Actions certifying the origin of the deployment.

Códigos de status de resposta HTTP

Código de statusDescrição
200

OK

400

Bad Request

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Exemplos de código

post/repos/{owner}/{repo}/pages/deployment
curl \ -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/repos/OWNER/REPO/pages/deployment \ -d '{"artifact_url":"https://downloadcontent/","environment":"github-pages","pages_build_version":"4fd754f7e594640989b406850d0bc8f06a121251","oidc_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlV2R1h4SUhlY0JFc1JCdEttemUxUEhfUERiVSIsImtpZCI6IjUyRjE5N0M0ODFERTcwMTEyQzQ0MUI0QTlCMzdCNTNDN0ZDRjBEQjUifQ.eyJqdGkiOiJhMWIwNGNjNy0zNzZiLTQ1N2QtOTMzNS05NTY5YmVjZDExYTIiLCJzdWIiOiJyZXBvOnBhcGVyLXNwYS9taW55aTplbnZpcm9ubWVudDpQcm9kdWN0aW9uIiwiYXVkIjoiaHR0cHM6Ly9naXRodWIuY29tL3BhcGVyLXNwYSIsInJlZiI6InJlZnMvaGVhZHMvbWFpbiIsInNoYSI6ImEyODU1MWJmODdiZDk3NTFiMzdiMmM0YjM3M2MxZjU3NjFmYWM2MjYiLCJyZXBvc2l0b3J5IjoicGFwZXItc3BhL21pbnlpIiwicmVwb3NpdG9yeV9vd25lciI6InBhcGVyLXNwYSIsInJ1bl9pZCI6IjE1NDY0NTkzNjQiLCJydW5fbnVtYmVyIjoiMzQiLCJydW5fYXR0ZW1wdCI6IjYiLCJhY3RvciI6IllpTXlzdHkiLCJ3b3JrZmxvdyI6IkNJIiwiaGVhZF9yZWYiOiIiLCJiYXNlX3JlZiI6IiIsImV2ZW50X25hbWUiOiJwdXNoIiwicmVmX3R5cGUiOiJicmFuY2giLCJlbnZpcm9ubWVudCI6IlByb2R1Y3Rpb24iLCJqb2Jfd29ya2Zsb3dfcmVmIjoicGFwZXItc3BhL21pbnlpLy5naXRodWIvd29ya2Zsb3dzL2JsYW5rLnltbEByZWZzL2hlYWRzL21haW4iLCJpc3MiOiJodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tIiwibmJmIjoxNjM5MDAwODU2LCJleHAiOjE2MzkwMDE3NTYsImlhdCI6MTYzOTAwMTQ1Nn0.VP8WictbQECKozE2SgvKb2FqJ9hisWsoMkYRTqfBrQfZTCXi5IcFEdgDMB2X7a99C2DeUuTvHh9RMKXLL2a0zg3-Sd7YrO7a2ll2kNlnvyIypcN6AeIc7BxHsTTnZN9Ud_xmEsTrSRGOEKmzCFkULQ6N4zlVD0sidypmXlMemmWEcv_ZHqhioEI_VMp5vwXQurketWH7qX4oDgG4okyYtPrv5RQHbfQcVo9izaPJ_jnsDd0CBA0QOx9InjPidtIkMYQLyUgJy33HLJy86EFNUnAf8UhBQuQi5mAsEpEzBBuKpG3PDiPtYCHOk64JZkZGd5mR888a5sbHRiaF8hm8YA","preview":false}'

Response

Status: 200
{ "status_url": "https://api.github.com/repos/github/developer.github.com/pages/deployments/4fd754f7e594640989b406850d0bc8f06a121251/status", "page_url": "developer.github.com" }

Get a DNS health check for GitHub Pages

Funciona com GitHub Apps

Gets a health check of the DNS settings for the CNAME record configured for a repository's GitHub Pages.

The first request to this endpoint returns a 202 Accepted status and starts an asynchronous background task to get the results for the domain. After the background task completes, subsequent requests to this endpoint return a 200 OK status with the health check results in the response.

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 administrative:write and pages:write permissions.

Parâmetros

Cabeçalhos
Nome, Type, Descrição
acceptstring

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

Parâmetros de caminho
Nome, Type, Descrição
ownerstringObrigatório

The account owner of the repository. The name is not case sensitive.

repostringObrigatório

The name of the repository. The name is not case sensitive.

Códigos de status de resposta HTTP

Código de statusDescrição
200

OK

202

Empty response

400

Custom domains are not available for GitHub Pages

404

Resource not found

422

There isn't a CNAME for this page

Exemplos de código

get/repos/{owner}/{repo}/pages/health
curl \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>"\ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/pages/health

Response

Status: 200
{ "domain": { "host": "example.com", "uri": "http://example.com/", "nameservers": "default", "dns_resolves": true, "is_proxied": false, "is_cloudflare_ip": false, "is_fastly_ip": false, "is_old_ip_address": false, "is_a_record": true, "has_cname_record": false, "has_mx_records_present": false, "is_valid_domain": true, "is_apex_domain": true, "should_be_a_record": true, "is_cname_to_github_user_domain": false, "is_cname_to_pages_dot_github_dot_com": false, "is_cname_to_fastly": false, "is_pointed_to_github_pages_ip": true, "is_non_github_pages_ip_present": false, "is_pages_domain": false, "is_served_by_pages": true, "is_valid": true, "reason": null, "responds_to_https": true, "enforces_https": true, "https_error": null, "is_https_eligible": true, "caa_error": null }, "alt_domain": { "host": "www.example.com", "uri": "http://www.example.com/", "nameservers": "default", "dns_resolves": true, "is_proxied": false, "is_cloudflare_ip": false, "is_fastly_ip": false, "is_old_ip_address": false, "is_a_record": true, "has_cname_record": false, "has_mx_records_present": false, "is_valid_domain": true, "is_apex_domain": true, "should_be_a_record": true, "is_cname_to_github_user_domain": false, "is_cname_to_pages_dot_github_dot_com": false, "is_cname_to_fastly": false, "is_pointed_to_github_pages_ip": true, "is_non_github_pages_ip_present": false, "is_pages_domain": false, "is_served_by_pages": true, "is_valid": true, "reason": null, "responds_to_https": true, "enforces_https": true, "https_error": null, "is_https_eligible": true, "caa_error": null } }