Skip to main content

Enterprise Server 3.21 está disponível no momento como versão candidata a lançamento.

A API REST agora é versionada. Para obter mais informações, confira "Sobre o controle de versão da API".

Pontos de extremidade da API REST para emails

Use a API REST para gerenciar endereços de email de usuários autenticados.

Sobre a administração de emails

Se uma URL de solicitação não incluir um parâmetro {username}, a resposta será para o usuário conectado (e você deverá passar informações de autenticação com sua solicitação). Informações privadas adicionais, como se um usuário tem autenticação de dois fatores habilitada, são incluídas quando autenticadas por meio da Autenticação Básica ou OAuth com o user escopo.

List email addresses for the authenticated user

Lists all of your email addresses, and specifies which one is visible to the public.

OAuth app tokens and personal access tokens (classic) need the user:email scope to use this endpoint.

Fine-grained access tokens for "List email addresses for the authenticated user"

This endpoint works with the following fine-grained token types:

The fine-grained token must have the following permission set:

  • "Email addresses" user permissions (read)

Parâmetros para "List email addresses for the authenticated user"

Cabeçalhos
Nome, Tipo, Descrição
accept string

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

Parâmetros de consulta
Nome, Tipo, Descrição
per_page integer

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

Padrão: 30

page integer

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

Padrão: 1

HTTP response status codes for "List email addresses for the authenticated user"

Status codeDescrição
200

OK

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

Code samples for "List email addresses for the authenticated user"

Request example

get/user/emails
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ http(s)://HOSTNAME/api/v3/user/emails

Response

Status: 200
[ { "email": "octocat@github.com", "verified": true, "primary": true, "visibility": "public" } ]

Add an email address for the authenticated user

OAuth app tokens and personal access tokens (classic) need the user scope to use this endpoint.

Fine-grained access tokens for "Add an email address for the authenticated user"

This endpoint works with the following fine-grained token types:

The fine-grained token must have the following permission set:

  • "Email addresses" user permissions (write)

Parâmetros para "Add an email address for the authenticated user"

Cabeçalhos
Nome, Tipo, Descrição
accept string

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

Parâmetros do corpo
Nome, Tipo, Descrição
emails array of strings Obrigatório

Adds one or more email addresses to your GitHub account. Must contain at least one email address. Note: Alternatively, you can pass a single email address or an array of emails addresses directly, but we recommend that you pass an object using the emails key.

HTTP response status codes for "Add an email address for the authenticated user"

Status codeDescrição
201

Created

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Code samples for "Add an email address for the authenticated user"

Request example

post/user/emails
curl -L \ -X POST \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ http(s)://HOSTNAME/api/v3/user/emails \ -d '{"emails":["octocat@github.com","mona@github.com","octocat@octocat.org"]}'

Response

Status: 201
[ { "email": "octocat@octocat.org", "primary": false, "verified": false, "visibility": "public" }, { "email": "octocat@github.com", "primary": false, "verified": false, "visibility": null }, { "email": "mona@github.com", "primary": false, "verified": false, "visibility": null } ]

Delete an email address for the authenticated user

OAuth app tokens and personal access tokens (classic) need the user scope to use this endpoint.

Fine-grained access tokens for "Delete an email address for the authenticated user"

This endpoint works with the following fine-grained token types:

The fine-grained token must have the following permission set:

  • "Email addresses" user permissions (write)

Parâmetros para "Delete an email address for the authenticated user"

Cabeçalhos
Nome, Tipo, Descrição
accept string

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

Parâmetros do corpo
Nome, Tipo, Descrição
emails array of strings Obrigatório

Email addresses associated with the GitHub user account.

HTTP response status codes for "Delete an email address for the authenticated user"

Status codeDescrição
204

No Content

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

422

Validation failed, or the endpoint has been spammed.

Code samples for "Delete an email address for the authenticated user"

Request example

delete/user/emails
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ http(s)://HOSTNAME/api/v3/user/emails \ -d '{"emails":["octocat@github.com","mona@github.com"]}'

Response

Status: 204

List public email addresses for the authenticated user

Lists your publicly visible email address, which you can set with the Set primary email visibility for the authenticated user endpoint.

OAuth app tokens and personal access tokens (classic) need the user:email scope to use this endpoint.

Fine-grained access tokens for "List public email addresses for the authenticated user"

This endpoint works with the following fine-grained token types:

The fine-grained token must have the following permission set:

  • "Email addresses" user permissions (read)

This endpoint can be used without authentication or the aforementioned permissions if only public resources are requested.

Parâmetros para "List public email addresses for the authenticated user"

Cabeçalhos
Nome, Tipo, Descrição
accept string

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

Parâmetros de consulta
Nome, Tipo, Descrição
per_page integer

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

Padrão: 30

page integer

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

Padrão: 1

HTTP response status codes for "List public email addresses for the authenticated user"

Status codeDescrição
200

OK

304

Not modified

401

Requires authentication

403

Forbidden

404

Resource not found

Code samples for "List public email addresses for the authenticated user"

Request example

get/user/public_emails
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2026-03-10" \ http(s)://HOSTNAME/api/v3/user/public_emails

Response

Status: 200
[ { "email": "octocat@github.com", "verified": true, "primary": true, "visibility": "public" } ]