Criar uma chave API
Nesta página
- A autenticação OAuth 2.0 para acesso programático ao Cloud Manager está disponível como um recurso de visualização.
- O recurso e a documentação correspondente podem mudar a qualquer momento durante o período de Pré-visualização. Para usar a 2.0 autenticação OAuth, crie uma conta de serviço para usar em suas solicitações para a API pública do Cloud Manager .
URL base: https://cloud.mongodb.com/api/public/v1.0
Resource
POST /orgs/{ORG-ID}/apiKeys
Parâmetros do caminho da solicitação
Nome | Tipo | Descrição |
---|---|---|
| string | Identificador exclusivo da organização cujas chaves de API você deseja recuperar. Use o endpoint /orgs para recuperar todas as organizações às quais o usuário autenticado tem acesso. |
Solicitar parâmetros de query
Os seguintes parâmetros de query são opcionais:
Nome | Tipo | Descrição | Default | ||||||
---|---|---|---|---|---|---|---|---|---|
pageNum | inteiro | Número da página (com base em índice 1). |
| ||||||
itemsPerPage | inteiro | Número de itens a serem devolvidos por página, até um máximo de 500. |
| ||||||
pretty | booleano | Indica se o corpo da resposta deve estar em um prettyprint formato. |
| ||||||
envelope | booleano | Indica se deseja ou não envolver a resposta em um envelope. Alguns clientes do API não podem acessar os cabeçalhos de resposta HTTP ou o código de status. Para corrigir isso, configure Para endpoints que retornam um resultado, o corpo da resposta inclui:
Para endpoints que retornam uma lista de resultados, o objeto | none |
Parâmetros do corpo da solicitação
Todos os parâmetros do corpo são obrigatórios.
Nome | Tipo | Descrição | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| string | Descrição da chave API. Deve ter entre 1 e 250 caracteres. | ||||||||||||||
| array de strings | Lista de funções que a chave API deve ter. Deve haver pelo menos uma função listada e todas as funções devem ser válidas para uma Organização. As funções da organização incluem:
|
Resposta
Nome | Tipo | Descrição | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| string | Identificador exclusivo para a chave API | ||||||||||||||
| string | Descrição da chave API | ||||||||||||||
| string | Chave privada para a chave API. Esta chave aparece sem edição apenas no momento da criação. | ||||||||||||||
| string | Chave pública para a chave de API | ||||||||||||||
| array de objetos | Funções que a chave API tem | ||||||||||||||
| string | O | ||||||||||||||
| string | O nome da função. O recurso
|
Exemplo de solicitação
Observação
O usuário que faz a solicitação pode ser formatado como {PUBLIC-KEY}:{PRIVATE-KEY}
.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --request POST "https://cloud.mongodb.com/api/public/v1.0/orgs/{ORG-ID}/apiKeys?pretty=true" \ --data '{ "desc" : "New API key for test purposes", "roles": ["ORG_MEMBER", "ORG_BILLING_ADMIN"] }'
Exemplo de resposta
Cabeçalho de resposta
401 Unauthorized Content-Type: application/json;charset=ISO-8859-1 Date: {dateInUnixFormat} WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false Content-Length: {requestLengthInBytes} Connection: keep-alive
200 OK Vary: Accept-Encoding Content-Type: application/json Strict-Transport-Security: max-age=300 Date: {dateInUnixFormat} Connection: keep-alive Content-Length: {requestLengthInBytes} X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
Corpo de resposta
Observação
O privateKey
aparece sem edição no corpo da resposta. Este exemplo foi redigido por motivos de segurança.
{ "desc" : "New API key for test purposes", "id" : "{API-KEY-ID}", "links" : [ { "href" : "https://cloud.mongodb.com/api/public/v1.0/orgs/{ORG-ID}/apiKeys/{API-KEY-ID}", "rel" : "self" } ], "privateKey" : "********-****-****-db2c132ca78d", "publicKey" : "{PUBLIC-KEY}", "roles" : [ { "orgId" : "{ORG-ID}", "roleName" : "ORG_BILLING_ADMIN" }, { "orgId" : "{ORG-ID}", "roleName" : "ORG_MEMBER" } ] }