Emails
- List email addresses for a user
- List public email addresses for a user
- Add email address(es)
- Delete email address(es)
Management of email addresses via the API requires that you authenticate through basic auth, or through OAuth with a correct scope for the endpoint.
List email addresses for a user
Lists all of your email addresses, and specifies which one is visible to the public. This endpoint is accessible with the user:email scope.
GET /user/emails
Response
Status: 200 OK
Link: <https://api.github.com/resource?page=2>; rel="next",
<https://api.github.com/resource?page=5>; rel="last"
[
{
"email": "octocat@github.com",
"verified": true,
"primary": true,
"visibility": "public"
}
]
List public email addresses for a user
Lists your publicly visible email address. This endpoint is accessible with the user:email scope.
GET /user/public_emails
Response
Status: 200 OK
Link: <https://api.github.com/resource?page=2>; rel="next",
<https://api.github.com/resource?page=5>; rel="last"
[
{
"email": "octocat@github.com",
"verified": true,
"primary": true,
"visibility": "public"
}
]
Add email address(es)
If your GitHub Enterprise Server instance has LDAP Sync enabled and the option to synchronize emails enabled, this API is disabled and will return a 403 response. Users managed in LDAP won't be able to add or delete an email address via the API with these options enabled.
This endpoint is accessible with the user scope.
POST /user/emails
Parameters
| Name | Type | Description |
|---|---|---|
emails |
array of strings
|
Required. Adds one or more email addresses to your GitHub Enterprise 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. |
Example
{
"emails": ["octocat@github.com", "support@github.com"]
}
Response
Status: 201 Created
[
{
"email": "octocat@octocat.org",
"primary": false,
"verified": false,
"visibility": "public"
},
{
"email": "octocat@github.com",
"primary": false,
"verified": false,
"visibility": null
},
{
"email": "support@github.com",
"primary": false,
"verified": false,
"visibility": null
}
]
Delete email address(es)
If your GitHub Enterprise Server instance has LDAP Sync enabled and the option to synchronize emails enabled, this API is disabled and will return a 403 response. Users managed in LDAP won't be able to add or delete an email address via the API with these options enabled.
This endpoint is accessible with the user scope.
DELETE /user/emails
Parameters
| Name | Type | Description |
|---|---|---|
emails |
array of strings
|
Required. Deletes one or more email addresses from your GitHub Enterprise 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. |
Example
{
"emails": ["octocat@github.com", "support@github.com"]
}
Response
Status: 204 No Content