Menu Docs
Página inicial do Docs
/
MongoDB Cloud Manager
/ / / /

Criar e atribuir uma chave de API da organização a um projeto

Nesta página

  • Resource
  • Parâmetros do caminho da solicitação
  • Solicitar parâmetros de query
  • Parâmetros do corpo da solicitação
  • Resposta
  • Exemplo de solicitação
  • Exemplo de resposta
  • Cabeçalho de resposta
  • Corpo de resposta

URL base: https://cloud.mongodb.com/api/public/v1.0

POST /groups/{PROJECT-ID}/apiKeys
Nome
Tipo
Descrição

PROJECT-ID

string

Identificador exclusivo do projeto cujas chaves deAPI você deseja recuperar. Use o endpoint /groups para recuperar todas as organizações às quais o usuário autenticado tem acesso.

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).

1

itemsPerPage

inteiro

Número de itens a serem devolvidos por página, até um máximo de 500.

100

pretty

booleano

false

envelope

booleano

Indica se deseja ou não envolver a resposta em um envelope.

Alguns clientes de API não podem acessar os cabeçalhos de resposta HTTP ou o código de status. Para corrigir isso, configure "envelope" : true na query.

Para endpoints que retornam um resultado, o corpo da resposta inclui:

Nome
Descrição

status

Código de resposta HTTP

content

Corpo de resposta esperado

Para endpoints que retornam uma lista de resultados, o objeto results é um envelope. O Cloud Manager adiciona o campo status ao corpo da resposta.

none

Pelo menos um dos dois parâmetros do corpo é necessário.

Nome
Tipo
Descrição

desc

string

Descrição da chave API . Deve ter entre 1 e 250 caracteres.

roles

array de strings

Lista de funções que a chave API precisa ter. Se a array roles for fornecida:

  • Forneça pelo menos um role

  • Certifique-se de que todas as funções sejam válidas para o projeto

As funções do projeto incluem:

Valor da função na API
Função

GROUP_AUTOMATION_ADMIN

GROUP_BACKUP_ADMIN

GROUP_BILLING_ADMIN

Administrador de faturamento do projeto

GROUP_DATA_ACCESS_ADMIN

GROUP_DATA_ACCESS_READ_ONLY

GROUP_DATA_ACCESS_READ_WRITE

GROUP_MONITORING_ADMIN

GROUP_OWNER

GROUP_READ_ONLY

GROUP_USER_ADMIN

Nome
Tipo
Descrição

desc

string

Descrição desta chave de API da Organização atribuída a este projeto.

id

string

Identificador único para esta chave de API da Organização atribuída a este projeto.

privateKey

string

Chave privada editada para esta chave de API da Organização atribuída a este projeto.

Essa chave é exibida sem edição quando criada pela primeira vez.

publicKey

string

Chave pública para esta chave de API da Organização atribuída a este projeto.

roles

array de objetos

Funções que essa chave de API da organização atribuída a esse projeto tem. Essa matriz retorna todos os papéis da organização e do projeto que o usuário tem no Cloud Manager.

roles.groupId

string

Identificador único do projeto ao qual pertence este role.

roles.orgId

string

Identificador único da organização à qual pertence esse role.

roles.roleName

string

Nome da função. Esse recurso retorna todos os roles que o usuário tem no Cloud Manager. Os valores possíveis são:

Roles da organização

Se esta for uma roles.orgId (Organização), os valores incluem:

Valor da função na API
Função

ORG_OWNER

ORG_MEMBER

ORG_GROUP_CREATOR

ORG_BILLING_ADMIN

ORG_READ_ONLY

ORG_BILLING_READ_ONLY

Roles do projeto

Se este for um roles.groupId (Projeto), os valores incluem:

Valor da função na API
Função

GROUP_AUTOMATION_ADMIN

GROUP_BACKUP_ADMIN

GROUP_BILLING_ADMIN

Administrador de faturamento do projeto

GROUP_DATA_ACCESS_ADMIN

GROUP_DATA_ACCESS_READ_ONLY

GROUP_DATA_ACCESS_READ_WRITE

GROUP_MONITORING_ADMIN

GROUP_OWNER

GROUP_READ_ONLY

GROUP_USER_ADMIN

Observação

O usuário que faz a solicitação pode ser formatado como {PUBLIC-KEY}:{PRIVATE-KEY}.

1curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
2 --header "Accept: application/json" \
3 --header "Content-Type: application/json" \
4 --include \
5 --request POST "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/apiKeys?pretty=true" \
6 --data '{
7 "desc" : "New API key for test purposes",
8 "roles": ["GROUP_READ_ONLY", "GROUP_DATA_ACCESS_ADMIN"]
9 }'
HTTP/1.1 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
HTTP/1.1 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}
1{
2 "desc" : "New API key for test purposes",
3 "id" : "5d1d143c87d9d63e6d694746",
4 "links" : [ {
5 "href" : "https://cloud.mongodb.com/api/public/v1.0/orgs/5980cfe20b6d97029d82fa63/apiKeys/5d1d143c87d9d63e6d694746",
6 "rel" : "self"
7 } ],
8 "privateKey" : "********-****-****-db2c132ca78d",
9 "publicKey" : "{PUBLIC-KEY}",
10 "roles" : [ {
11 "groupId" : "{PROJECT-ID}",
12 "roleName" : "GROUP_READ_ONLY"
13 }, {
14 "groupId" : "{PROJECT-ID}",
15 "roleName" : "GROUP_DATA_ACCESS_ADMIN"
16 }, {
17 "orgId" : "5980cfe20b6d97029d82fa63",
18 "roleName" : "ORG_BILLING_ADMIN"
19 } ]
20}

Voltar

Obter todos