Criar uma conta de serviço da organização

POSTAR /api/atlas/v2/orgs/{orgId}/serviceAccounts

Cria uma conta de serviço para a organização especificada.

parâmetros de caminho

  • orgId string Obrigatório

    24String exclusiva de dígitos hexadecimais que identifica a organização que contém seus projetos. Use o endpoint /orgs para recuperar todas as organizações às quais o usuário autenticado tem acesso.

    O formato deve corresponder ao seguinte padrão: ^([a-f0-9]{24})$.

parâmetros de query

  • envelope booleano

    Sinalizador que indica se o aplicativo empacota a resposta em um objeto JSON envelope. Alguns clientes de API não podem acessar os cabeçalhos de resposta HTTP ou o código de status. Para corrigir isso, defina envelope=true na consulta. Os endpoints que retornam uma lista de resultados usam o objeto de resultados como um envelope. O aplicativo adiciona o parâmetro de status ao corpo da resposta.

    O valor padrão é false.

  • pretty booleano

    Sinalizador que indica se o corpo da resposta deve estar no formato prettyprint.

    O valor padrão é false.

    Prettyprint
application/vnd.atlas.2024-08-05+json

corpo, corpo Obrigatório

Detalhes da nova conta de serviço.

  • Descrição string Obrigatório

    Descrição legível por humanos para a conta de serviço.

    O comprimento mínimo é 1, o comprimento máximo é 250. O formato deve corresponder ao seguinte padrão: ^[\p{L}\p{N}\-_.,' ]*$.

  • name string Obrigatório

    Nome legível por humanos para a Conta de serviço. O nome é modificável e não precisa ser exclusivo.

    O comprimento mínimo é 1, o comprimento máximo é 64. O formato deve corresponder ao seguinte padrão: ^[\p{L}\p{N}\-_.,' ]*$.

  • roles array[string] Obrigatório

    Uma lista de funções no nível da organização para a conta de serviço.

    Pelo menos 1 elemento. Os valores são ORG_MEMBER, ORG_READ_ONLY, ORG_BILLING_ADMIN, ORG_BILLING_READ_ONLY, ORG_STREAM_PROCESSING_ADMIN, ORG_GROUP_CREATOR ou ORG_OWNER.

  • secretExpiresAfterHours integer(int32) Obrigatório

    O tempo de expiração do novo segredo da Conta de Serviço, fornecido em horas. Os tempos de expiração mínimos e máximos permitidos estão sujeitos a alterações e são controlados pelas configurações da organização.

Respostas

  • 201 application/vnd.atlas.2024-08-05+json

    Criado

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • ID do cliente string

      O ID do cliente da Conta de serviço.

      O formato deve corresponder ao seguinte padrão: ^mdb_sa_id_[a-fA-F\d]{24}$.

    • createdAt string(data-hora)

      A data em que a conta de serviço foi criada. Este parâmetro expressa seu valor no formato de registro de data/hora ISO 8601 em UTC.

    • Descrição string

      Descrição legível por humanos para a conta de serviço.

    • name string

      Nome legível por humanos para a Conta de Serviço.

    • roles array[string]

      Uma lista de roles da organização associados à conta de serviço.

      Os valores são ORG_MEMBER, ORG_READ_ONLY, ORG_BILLING_ADMIN, ORG_BILLING_READ_ONLY, ORG_STREAM_PROCESSING_ADMIN, ORG_GROUP_CREATOR ou ORG_OWNER.

    • secrets array[objeto]

      Uma lista de segredos associados à Conta de Serviço especificada.

      Ocultar atributos de segredos Mostrar atributos de segredos objeto
      • createdAt string(data-hora) Obrigatório

        A data em que o segredo foi criado. Este parâmetro expressa seu valor no formato de registro de data/hora ISO 8601 em UTC.

      • expiresAt string(data-hora) Obrigatório

        A data para a expiração do segredo. Este parâmetro expressa seu valor no formato de registro de data/hora ISO 8601 em UTC.

      • id string Obrigatório

        String exclusiva de 24 dígitos hexadecimais que identifica a senha.

        O formato deve corresponder ao seguinte padrão: ^([a-f0-9]{24})$.

      • lastUsedAt string(data-hora)

        A última vez que o segredo foi usado. Este parâmetro expressa seu valor no formato de registro de data/hora ISO 8601 em UTC.

      • maskedSecretValue string

        O segredo da Conta de serviço ocultada.

      • segredo string

        O segredo da conta de serviço. Ele será retornado apenas na primeira vez após a criação.

  • 400 aplicação/json

    Solicitação inválida.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 401 aplicação/json

    Não autorizado.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 403 aplicação/json

    Forbidden.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 404 aplicação/json

    Não encontrado.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

  • 500 aplicação/json

    Erro interno do servidor.

    Ocultar atributos de resposta Mostrar atributos de resposta objeto
    • badRequestDetail objeto

      Detalhes da solicitação inválida.

      Ocultar atributo ruimRequestDetail Mostrar atributo ruimRequestDetail objeto
      • Campos array[objeto]

        Descreve todas as violações em uma solicitação do cliente .

        Ocultar atributos de campos Mostrar atributos dos campos objeto
        • Descrição string Obrigatório

          Uma descrição do motivo pelo qual o elemento de solicitação é incorreto.

        • Campo string Obrigatório

          Um caminho que leva a um campo no corpo da solicitação.

    • detalhe string

      Descreve as condições ou os motivos específicos que causam cada tipo de erro.

    • Erro integer(int32) Obrigatório

      O código de status HTTP retornado com este erro.

      Documentação externa
    • Código de erro string Obrigatório

      Código de erro do aplicativo retornado com esse erro.

    • Parâmetros array[objeto]

      Parâmetros usados para fornecer mais informações sobre o erro.

    • Razão string

      Mensagens de erro de aplicativo retornadas com este erro.

POST /API/atlas/v2/orgs/{orgId}/serviceAccounts
atlas api serviceAccounts createOrgServiceAccount --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20250312001/admin"
)

func main() {
	ctx := context.Background()
	clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
	clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")

	// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
	client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))

	if err != nil {
		log.Fatalf("Error: %v", err)
	}

	params = &sdk.CreateOrgServiceAccountApiParams{}
	sdkResp, httpResp, err := client.ServiceAccountsApi.
		CreateOrgServiceAccountWithParams(ctx, params).
		Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2025-03-12+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/serviceAccounts" \
  -d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest --include \
  --header "Accept: application/vnd.atlas.2025-03-12+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/orgs/{orgId}/serviceAccounts" \
  -d '{ <Payload> }'
Exemplos de solicitação
{
  "description": "string",
  "name": "string",
  "roles": [
    "ORG_MEMBER"
  ],
  "secretExpiresAfterHours": 8
}
Exemplos de resposta (201)
{
  "clientId": "mdb_sa_id_1234567890abcdef12345678",
  "createdAt": "2025-05-04T09:42:00Z",
  "description": "string",
  "name": "string",
  "roles": [
    "ORG_MEMBER"
  ],
  "secrets": [
    {
      "createdAt": "2025-05-04T09:42:00Z",
      "expiresAt": "2025-05-04T09:42:00Z",
      "id": "32b6e34b3d91647abb20e7b8",
      "lastUsedAt": "2025-05-04T09:42:00Z",
      "maskedSecretValue": "mdb_sa_sk_...",
      "secret": "mdb_sa_sk_..."
    }
  ]
}
Exemplos de resposta (400)
{
  "error": 400,
  "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  "reason": "Bad Request",
  "errorCode": "VALIDATION_ERROR"
}
Exemplos de resposta (401)
{
  "error": 401,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Unauthorized",
  "errorCode": "NOT_ORG_GROUP_CREATOR"
}
Exemplos de resposta (403)
{
  "error": 403,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Forbidden",
  "errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
Exemplos de resposta (404)
{
  "error": 404,
  "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
  "reason": "Not Found",
  "errorCode": "RESOURCE_NOT_FOUND"
}
Exemplos de resposta (500)
{
  "error": 500,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Internal Server Error",
  "errorCode": "UNEXPECTED_ERROR"
}