Crear y asignar una clave API de organización a un proyecto

PUBLICAR /api/atlas/v2/grupos/{ID de grupo}/apiKeys

Crea y asigna la clave API de la organización especificada al proyecto especificado. Los usuarios con el rol de Propietario del Proyecto en el proyecto asociado a la clave API pueden usarla para acceder a los recursos. Para usar este recurso, la cuenta de servicio o la clave API solicitantes deben tener el rol de Propietario del Proyecto o Gestor de Acceso al Proyecto.

Parámetros de ruta

  • ID de grupo string Requerido

    Cadena 24hexadecimal única que identifica su proyecto. Utilice el punto de conexión /groups para recuperar todos los proyectos a los que el usuario autenticado tiene acceso.

    NOTA: Grupos y proyectos son términos sinónimos. El ID de tu grupo es el mismo que el de tu proyecto. Para los grupos existentes, el ID de tu grupo/proyecto permanece igual. El recurso y los puntos finales correspondientes usan el término "grupos".

    El formato debe coincidir con el siguiente patrón: ^([a-f0-9]{24})$.

Parámetros de consulta

  • envolvente booleano

    Indicador que indica si la aplicación encapsula la respuesta en un objeto JSON envelope. Algunos clientes de la API no pueden acceder a los encabezados de respuesta HTTP ni al código de estado. Para solucionar esto, configure envelope=true en la consulta. Los endpoints que devuelven una lista de resultados utilizan el objeto de resultados como encapsulado. La aplicación añade el parámetro de estado al cuerpo de la respuesta.

    El valor predeterminado es false.

  • bonita booleano

    Bandera que indica si el cuerpo de la respuesta debe estar en formato prettyprint.

    El valor predeterminado es false.

    Impresión bonita
application/vnd.atlas.2023-01-01+json

Cuerpo Requerido

Clave API de la organización que se creará y se asignará al proyecto especificado.

  • desc string Requerido

    Propósito o explicación proporcionada cuando alguien creó esta clave API del proyecto.

    La longitud mínima es 1, la longitud máxima es 250.

  • papeles array[string] Requerido

    Lista de roles a los que se otorga esta clave API. Si proporciona esta lista, indique al menos un rol y asegúrese de que cada uno sea aplicable a este proyecto.

    Al menos 1 elemento.

Respuestas

  • 200 application/vnd.atlas.2023-01-01+json

    Vale

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • desc string

      Propósito o explicación proporcionada cuando alguien creó esta clave API de organización.

      La longitud mínima es 1, la longitud máxima es 250.

    • ID. string

      Cadena de dígitos hexadecimales 24única que identifica la clave API de esta organización asignada a este proyecto.

      El formato debe coincidir con el siguiente patrón: ^([a-f0-9]{24})$.

    • clave privada string

      Se devolvió una clave privada redactada para esta clave API de organización. Esta clave se muestra sin redactar al crearse.

    • publicKey string

      Valor de clave API pública establecido para la clave API de la organización especificada.

      La longitud mínima es 8, la longitud máxima es 8.

    • papeles matriz[objeto]

      Lista que contiene los roles que debe tener la clave API. Todos los roles que proporcione deben ser válidos para el proyecto u organización especificados. Cada solicitud debe incluir al menos un rol válido. El recurso devuelve todos los roles de proyecto y organización asignados a la clave API.

      Roles de usuario de MongoDB Cloud y la organización o proyecto correspondiente al que corresponde cada rol. Cada rol puede aplicarse a una organización o a un proyecto, pero no a ambos.

      Ocultar atributos de roles Mostrar atributos de roles Objeto
      • ID de grupo string

        Cadena única de dígitos hexadecimales 24que identifica el proyecto al que pertenece este rol. Puede establecer un valor para este parámetro o orgId, pero no ambos, en la misma solicitud.

        La longitud mínima es 24 y la máxima es 24. El formato debe coincidir con el siguiente patrón: ^([a-f0-9]{24})$.

      • orgId string

        Cadena única de dígitos hexadecimales 24que identifica la organización a la que pertenece este rol. Puede establecer un valor para este parámetro o groupId, pero no ambos, en la misma solicitud.

        La longitud mínima es 24 y la máxima es 24. El formato debe coincidir con el siguiente patrón: ^([a-f0-9]{24})$.

      • nombreDeRol string

        Etiqueta legible que identifica el conjunto de privilegios que MongoDB Cloud otorga a una clave de API, un usuario o un equipo de MongoDB Cloud específicos. Estos roles incluyen roles a nivel de organización y de proyecto.

        Roles de usuario de MongoDB Cloud
  • 401 aplicación/json

    No autorizado.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • badRequestDetail Objeto

      Detalle de solicitud incorrecto.

      Ocultar el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • campos matriz[objeto]

        Describe todas las violaciones en una solicitud de cliente.

        Ocultar atributos de campos Mostrar atributos de campos Objeto
        • Descripción string Requerido

          Una descripción de por qué el elemento de solicitud es incorrecto.

        • Campo string Requerido

          Una ruta que conduce a un campo en el cuerpo de la solicitud.

    • detalle string

      Describe las condiciones o razones específicas que causan cada tipo de error.

    • Error integer(int32) Requerido

      Código de estado HTTP devuelto con este error.

      Documentación externa
    • errorCode string Requerido

      Código de error de aplicación devuelto con este error.

    • Parámetros matriz[objeto]

      Parámetros utilizados para dar más información sobre el error.

    • razón string

      Se devolvió un mensaje de error de aplicación con este error.

  • 403 aplicación/json

    Forbidden.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • badRequestDetail Objeto

      Detalle de solicitud incorrecto.

      Ocultar el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • campos matriz[objeto]

        Describe todas las violaciones en una solicitud de cliente.

        Ocultar atributos de campos Mostrar atributos de campos Objeto
        • Descripción string Requerido

          Una descripción de por qué el elemento de solicitud es incorrecto.

        • Campo string Requerido

          Una ruta que conduce a un campo en el cuerpo de la solicitud.

    • detalle string

      Describe las condiciones o razones específicas que causan cada tipo de error.

    • Error integer(int32) Requerido

      Código de estado HTTP devuelto con este error.

      Documentación externa
    • errorCode string Requerido

      Código de error de aplicación devuelto con este error.

    • Parámetros matriz[objeto]

      Parámetros utilizados para dar más información sobre el error.

    • razón string

      Se devolvió un mensaje de error de aplicación con este error.

  • 404 aplicación/json

    No se encontró.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • badRequestDetail Objeto

      Detalle de solicitud incorrecto.

      Ocultar el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • campos matriz[objeto]

        Describe todas las violaciones en una solicitud de cliente.

        Ocultar atributos de campos Mostrar atributos de campos Objeto
        • Descripción string Requerido

          Una descripción de por qué el elemento de solicitud es incorrecto.

        • Campo string Requerido

          Una ruta que conduce a un campo en el cuerpo de la solicitud.

    • detalle string

      Describe las condiciones o razones específicas que causan cada tipo de error.

    • Error integer(int32) Requerido

      Código de estado HTTP devuelto con este error.

      Documentación externa
    • errorCode string Requerido

      Código de error de aplicación devuelto con este error.

    • Parámetros matriz[objeto]

      Parámetros utilizados para dar más información sobre el error.

    • razón string

      Se devolvió un mensaje de error de aplicación con este error.

  • 500 aplicación/json

    Error Interno del Servidor.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • badRequestDetail Objeto

      Detalle de solicitud incorrecto.

      Ocultar el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • campos matriz[objeto]

        Describe todas las violaciones en una solicitud de cliente.

        Ocultar atributos de campos Mostrar atributos de campos Objeto
        • Descripción string Requerido

          Una descripción de por qué el elemento de solicitud es incorrecto.

        • Campo string Requerido

          Una ruta que conduce a un campo en el cuerpo de la solicitud.

    • detalle string

      Describe las condiciones o razones específicas que causan cada tipo de error.

    • Error integer(int32) Requerido

      Código de estado HTTP devuelto con este error.

      Documentación externa
    • errorCode string Requerido

      Código de error de aplicación devuelto con este error.

    • Parámetros matriz[objeto]

      Parámetros utilizados para dar más información sobre el error.

    • razón string

      Se devolvió un mensaje de error de aplicación con este error.

PUBLICAR /api/atlas/v2/grupos/{ID de grupo}/apiKeys
atlas api programmaticApiKeys createGroupApiKey --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20240805001/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.CreateGroupApiKeyApiParams{}
	sdkResp, httpResp, err := client.ProgrammaticAPIKeysApi.
		CreateGroupApiKeyWithParams(ctx, params).
		Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2024-08-05+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/apiKeys" \
  -d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest --include \
  --header "Accept: application/vnd.atlas.2024-08-05+json" \
  --header "Content-Type: application/json" \
  -X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/apiKeys" \
  -d '{ <Payload> }'
Solicitar ejemplos
{
  "desc": "string",
  "roles": [
    "string"
  ]
}
Ejemplos de respuestas (200)
{
  "desc": "string",
  "id": "32b6e34b3d91647abb20e7b8",
  "links": [
    {
      "href": "https://cloud.mongodb.com/api/atlas",
      "rel": "self"
    }
  ],
  "privateKey": "55c3bbb6-b4bb-0be1-e66d20841f3e",
  "publicKey": "zmmrboas",
  "roles": [
    {
      "groupId": "32b6e34b3d91647abb20e7b8",
      "orgId": "32b6e34b3d91647abb20e7b8",
      "roleName": "string"
    }
  ]
}
Ejemplos de respuestas (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"
}
Ejemplos de respuestas (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"
}
Ejemplos de respuestas (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"
}
Ejemplos de respuestas (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"
}