Recentemente, movemos algumas das documentações da API REST. Se você não conseguir encontrar o que está procurando, tente a página da API REST Ações.
Usuários
Use a API REST para suspender, cancelar a suspensão, promover e rebaixar dos usuários da sua empresa.
Sobre a administração de usuários
Esses pontos de extremidade só estão disponíveis para administradores autenticados do site. Os usuários normais receberão uma resposta 403
.
List public keys
Parâmetros para "List public keys"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de consulta |
Name, Tipo, Descrição |
per_page integer The number of results per page (max 100). Padrão: |
page integer Page number of the results to fetch. Padrão: |
direction string The direction to sort the results by. Padrão: Pode ser um dos: |
sort string Padrão: Pode ser um dos: |
since string Only show public keys accessed after the given time. |
Códigos de status de resposta HTTP para "List public keys"
Código de status | Descrição |
---|---|
200 | OK |
Exemplos de código para "List public keys"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/admin/keys
Response
Status: 200
[
{
"key": "2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvv1234",
"id": 2,
"url": "https://HOSTNAME/user/keys/2",
"title": "ssh-rsa AAAAB3NzaC1yc2EAAA",
"created_at": "2020-06-11T21:31:57Z",
"verified": false,
"read_only": false,
"last_used": "2020-06-11T22:31:57Z",
"user_id": 1,
"repository_id": 2
},
{
"key": "9Og8iYjAyymI9LvABpJerYrMxURPc8r+dB7TJyvv1234",
"id": 3,
"url": "https://HOSTNAME/user/keys/2",
"title": "ssh-rsa AAAAB3NzaC1yc2EAAA",
"created_at": "2020-06-11T21:31:57Z",
"verified": false,
"read_only": false,
"last_used": "2020-06-11T22:31:57Z",
"user_id": 1,
"repository_id": 2
}
]
Delete a public key
Parâmetros para "Delete a public key"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
key_ids string ObrigatórioThe unique identifier of the key. |
Códigos de status de resposta HTTP para "Delete a public key"
Código de status | Descrição |
---|---|
204 | No Content |
Exemplos de código para "Delete a public key"
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/admin/keys/KEY_IDS
Response
Status: 204
List personal access tokens
Lists personal access tokens for all users, including admin users.
Parâmetros para "List personal access tokens"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de consulta |
Name, Tipo, Descrição |
per_page integer The number of results per page (max 100). Padrão: |
page integer Page number of the results to fetch. Padrão: |
Códigos de status de resposta HTTP para "List personal access tokens"
Código de status | Descrição |
---|---|
200 | OK |
Exemplos de código para "List personal access tokens"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/admin/tokens
Response
Status: 200
[
{
"id": 2,
"url": "https://enterprise.octocat.com/api/v3/authorizations/2",
"app": {
"name": "My personal access token",
"url": "https://docs.github.com/enterprise/rest/reference/enterprise-admin#list-personal-access-tokens",
"client_id": "00000000000000000000"
},
"token": "ghp_16C7e42F292c6912E7710c838347Ae178B4a",
"hashed_token": "23cffb2fab1b0a62747863eba88cb9327e561f2f7a0c8661c0d9b83146cb8d45",
"token_last_eight": "Ae178B4a",
"note": "My personal access token",
"note_url": null,
"created_at": "2019-04-24T21:49:02Z",
"updated_at": "2019-04-24T21:49:02Z",
"scopes": [
"admin:business",
"admin:gpg_key",
"admin:org",
"admin:org_hook",
"admin:pre_receive_hook",
"admin:public_key",
"admin:repo_hook",
"delete_repo",
"gist",
"notifications",
"repo",
"user",
"write:discussion"
],
"fingerprint": null
}
]
Delete a personal access token
Deletes a personal access token. Returns a 403 - Forbidden
status when a personal access token is in use. For example, if you access this endpoint with the same personal access token that you are trying to delete, you will receive this error.
Parâmetros para "Delete a personal access token"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
token_id integer ObrigatórioThe unique identifier of the token. |
Códigos de status de resposta HTTP para "Delete a personal access token"
Código de status | Descrição |
---|---|
204 | No Content |
Exemplos de código para "Delete a personal access token"
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/admin/tokens/TOKEN_ID
Response
Status: 204
Create a user
If an external authentication mechanism is used, the login name should match the login name in the external system. If you are using LDAP authentication, you should also update the LDAP mapping for the user.
The login name will be normalized to only contain alphanumeric characters or single hyphens. For example, if you send "octo_cat"
as the login, a user named "octo-cat"
will be created.
If the login name or email address is already associated with an account, the server will return a 422
response.
Parâmetros para "Create a user"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros do corpo |
Name, Tipo, Descrição |
login string ObrigatórioThe user's username. |
email string Required for built-in authentication. The user's email address. This parameter can be omitted when using CAS, LDAP, or SAML. For more information, see "About authentication for your enterprise." |
Códigos de status de resposta HTTP para "Create a user"
Código de status | Descrição |
---|---|
201 | Created |
Exemplos de código para "Create a user"
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/admin/users \
-d '{"login":"monalisa","email":"octocat@github.com"}'
Response
Status: 201
{
"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
}
Update the username for a user
Parâmetros para "Update the username for a user"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
username string ObrigatórioThe handle for the GitHub user account. |
Parâmetros do corpo |
Name, Tipo, Descrição |
login string ObrigatórioThe user's new username. |
Códigos de status de resposta HTTP para "Update the username for a user"
Código de status | Descrição |
---|---|
202 | Accepted |
Exemplos de código para "Update the username for a user"
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/admin/users/USERNAME \
-d '{"login":"thenewmonalisa"}'
Response
Status: 202
{
"message": "Job queued to rename user. It may take a few minutes to complete.",
"url": "https://HOSTNAME/user/1"
}
Delete a user
Deleting a user will delete all their repositories, gists, applications, and personal settings. Suspending a user is often a better option.
You can delete any user account except your own.
Parâmetros para "Delete a user"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
username string ObrigatórioThe handle for the GitHub user account. |
Códigos de status de resposta HTTP para "Delete a user"
Código de status | Descrição |
---|---|
204 | No Content |
Exemplos de código para "Delete a user"
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/admin/users/USERNAME
Response
Status: 204
Create an impersonation OAuth token
Parâmetros para "Create an impersonation OAuth token"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
username string ObrigatórioThe handle for the GitHub user account. |
Parâmetros do corpo |
Name, Tipo, Descrição |
scopes array of strings ObrigatórioA list of scopes. |
Códigos de status de resposta HTTP para "Create an impersonation OAuth token"
Código de status | Descrição |
---|---|
200 | Response when getting an existing impersonation OAuth token |
201 | Response when creating a new impersonation OAuth token |
Exemplos de código para "Create an impersonation OAuth token"
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/admin/users/USERNAME/authorizations \
-d '{"scopes":["public_repo"]}'
Response when getting an existing impersonation OAuth token
Status: 200
{
"id": 1,
"url": "https://HOSTNAME/authorizations/1",
"scopes": [
"public_repo"
],
"token": "ghu_16C7e42F292c6912E7710c838347Ae178B4a",
"token_last_eight": "Ae178B4a",
"hashed_token": "25f94a2a5c7fbaf499c665bc73d67c1c87e496da8985131633ee0a95819db2e8",
"app": {
"url": "http://my-github-app.com",
"name": "my github app",
"client_id": "abcde12345fghij67890"
},
"note": "optional note",
"note_url": "http://optional/note/url",
"updated_at": "2011-09-06T20:39:23Z",
"created_at": "2011-09-06T17:26:27Z",
"expires_at": "2011-10-06T17:26:27Z",
"fingerprint": "jklmnop12345678"
}
Delete an impersonation OAuth token
Parâmetros para "Delete an impersonation OAuth token"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
username string ObrigatórioThe handle for the GitHub user account. |
Códigos de status de resposta HTTP para "Delete an impersonation OAuth token"
Código de status | Descrição |
---|---|
204 | No Content |
Exemplos de código para "Delete an impersonation OAuth token"
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/admin/users/USERNAME/authorizations
Response
Status: 204
Promote a user to be a site administrator
Note that you'll need to set Content-Length
to zero when calling out to this endpoint. For more information, see "HTTP verbs."
Parâmetros para "Promote a user to be a site administrator"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
username string ObrigatórioThe handle for the GitHub user account. |
Códigos de status de resposta HTTP para "Promote a user to be a site administrator"
Código de status | Descrição |
---|---|
204 | No Content |
Exemplos de código para "Promote a user to be a site administrator"
curl -L \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/users/USERNAME/site_admin
Response
Status: 204
Demote a site administrator
You can demote any user account except your own.
Parâmetros para "Demote a site administrator"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
username string ObrigatórioThe handle for the GitHub user account. |
Códigos de status de resposta HTTP para "Demote a site administrator"
Código de status | Descrição |
---|---|
204 | No Content |
Exemplos de código para "Demote a site administrator"
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/users/USERNAME/site_admin
Response
Status: 204
Suspend a user
If your GitHub instance uses LDAP Sync with Active Directory LDAP servers, Active Directory LDAP-authenticated users cannot be suspended through this API. If you attempt to suspend an Active Directory LDAP-authenticated user through this API, it will return a 403
response.
You can suspend any user account except your own.
Note that, if you choose not to pass any parameters, you'll need to set Content-Length
to zero when calling out to this endpoint. For more information, see "HTTP verbs."
Parâmetros para "Suspend a user"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
username string ObrigatórioThe handle for the GitHub user account. |
Parâmetros do corpo |
Name, Tipo, Descrição |
reason string The reason the user is being suspended. This message will be logged in the audit log. If you don't provide a |
Códigos de status de resposta HTTP para "Suspend a user"
Código de status | Descrição |
---|---|
204 | No Content |
Exemplos de código para "Suspend a user"
curl -L \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/users/USERNAME/suspended \
-d '{"reason":"Suspended during leave of absence."}'
Response
Status: 204
Unsuspend a user
If your GitHub instance uses LDAP Sync with Active Directory LDAP servers, this API is disabled and will return a 403
response. Active Directory LDAP-authenticated users cannot be unsuspended using the API.
Parâmetros para "Unsuspend a user"
Cabeçalhos |
---|
Name, Tipo, Descrição |
accept string Setting to |
Parâmetros de caminho |
Name, Tipo, Descrição |
username string ObrigatórioThe handle for the GitHub user account. |
Parâmetros do corpo |
Name, Tipo, Descrição |
reason string The reason the user is being unsuspended. This message will be logged in the audit log. If you don't provide a |
Códigos de status de resposta HTTP para "Unsuspend a user"
Código de status | Descrição |
---|---|
204 | No Content |
Exemplos de código para "Unsuspend a user"
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/users/USERNAME/suspended \
-d '{"reason":"Unsuspended after leave of absence."}'
Response
Status: 204