Crear cuenta de servicio del proyecto

publicación /api/v1/projects/{id}/service-accounts

Crea una cuenta de servicio al cliente con ámbito de proyecto y devuelve su clave secreta una sola vez. El rol acepta exactamente un nombre: PROJECT_OWNER, PROJECT_READ_ONLY o AGENT_DEVELOPER. PROJECT_MEMBER también se acepta. role_assignments muestra el rol de Agent Engine almacenado. Requiere PROJECT_OWNER; ORG_ADMIN para la organización propietaria también se acepta.

Parámetros de path

  • ID string Requerido

    ID del proyecto

application/json

Cuerpo Requerido

Crear solicitud

  • Descripción string

    La longitud máxima es 500.

  • ip_access_list array[string]

    Lista de direcciones IP/CIDR permitidas (opcional). Si está vacía o se omite, no tiene restricciones. Máximo 100 entradas.

    No más de 100 elementos.

  • Nombre string Requerido

    La longitud máxima es 100.

  • Roles array[string] Requerido

    Roles es el conjunto de roles inicial. Se requiere exactamente un rol. Las cuentas de organización aceptan ORG_GROUP_CREATOR u ORG_READ_ONLY. Las cuentas de proyecto aceptan PROJECT_OWNER, PROJECT_READ_ONLY o AGENT_DEVELOPER. Los nombres heredados de Agent Engine (ORG_ADMIN, ORG_MEMBER, PROJECT_MEMBER) siguen siendo aceptados. role_assignments muestra el rol de Agent Engine almacenado al que se resuelven esos nombres.

    Al menos 1 elemento pero no más de 1.

  • El secreto expira después del horario laboral. entero

    TTL secreto opcional en horas. Por defecto es 2160 (90 días) cuando se omite.

Respuestas

  • Versión de API no compatible o con formato incorrecto, operación no disponible en el contrato publicado seleccionado o representación inaceptable (incluidos parámetros de tipo de medio no compatibles o SSE excluidos). Los fallos de autenticación, autorización y límite de velocidad existentes tienen prioridad.

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

      Detalles de validación opcionales definidos por el esquema de error estándar; los errores de negociación de la API no emiten este campo.

      Ocultad el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • Campos arreglo[objeto]

        Campos con errores de validación.

        Ocultar campos atributos Mostrar los atributos de los campos Objeto

        Un campo y su fallo de validación.

        • Descripción string Requerido

          Fallo en la validación legible para humanos.

        • Campo string Requerido

          Nombre o ruta del campo de solicitud no válido.

    • detalle string Requerido

      Detalles de errores legibles para humanos.

    • Error entero Requerido

      HTTP status code.

    • errorCode string Requerido

      Código de error legible por máquina.

    • Parámetros array[string]

      Nombres de los parámetros de la solicitud asociados con el error; se omiten cuando no corresponde ninguno.

    • motivo string Requerido

      Frase que indica el motivo del estado HTTP.

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

      Detalles de validación opcionales definidos por el esquema de error estándar; los errores de negociación de la API no emiten este campo.

      Ocultad el atributo badRequestDetail Mostrar el atributo badRequestDetail Objeto
      • Campos arreglo[objeto]

        Campos con errores de validación.

        Ocultar campos atributos Mostrar los atributos de los campos Objeto

        Un campo y su fallo de validación.

        • Descripción string Requerido

          Fallo en la validación legible para humanos.

        • Campo string Requerido

          Nombre o ruta del campo de solicitud no válido.

    • detalle string Requerido

      Detalles de errores legibles para humanos.

    • Error entero Requerido

      HTTP status code.

    • errorCode string Requerido

      Código de error legible por máquina.

    • Parámetros array[string]

      Nombres de los parámetros de la solicitud asociados con el error; se omiten cuando no corresponde ninguno.

    • motivo string Requerido

      Frase que indica el motivo del estado HTTP.

  • 201

    Creado.

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • client_secret string
    • cuenta_de_servicio Objeto
      Ocultar atributos de la cuenta de servicio Mostrar atributos de la cuenta de servicio Objeto
      • secreto activo Objeto
        Ocultar atributos active_secret Mostrar atributos de active_secret Objeto
        • created_at string
        • expira_en string
        • último_usado_en string
        • masked_value string
      • client_id string
      • created_at string
      • Descripción string
      • ID string
      • ip_access_list array[string]
      • está_activo booleano
      • ¿Es administrado por el sistema? booleano
      • Nombre string
      • org_id string
      • propietario string
      • project_id string
      • asignaciones de roles arreglo[objeto]
        Ocultar atributos de asignación de roles Mostrar atributos de asignación de roles Objeto
        • org_id string
        • project_id string
        • rol string
      • tipo string
      • updated_at string
    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • client_secret string
    • cuenta_de_servicio Objeto
      Ocultar atributos de la cuenta de servicio Mostrar atributos de la cuenta de servicio Objeto
      • secreto activo Objeto
        Ocultar atributos active_secret Mostrar atributos de active_secret Objeto
        • created_at string
        • expira_en string
        • último_usado_en string
        • masked_value string
      • client_id string
      • created_at string
      • Descripción string
      • ID string
      • ip_access_list array[string]
      • está_activo booleano
      • ¿Es administrado por el sistema? booleano
      • Nombre string
      • org_id string
      • propietario string
      • project_id string
      • asignaciones de roles arreglo[objeto]
        Ocultar atributos de asignación de roles Mostrar atributos de asignación de roles Objeto
        • org_id string
        • project_id string
        • rol string
      • tipo string
      • updated_at string
  • Solicitud incorrecta

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
  • Forbidden

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
  • No encontrado

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
  • Conflicto

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
  • 429

    Demasiadas peticiones

    Atributo de ocultar encabezados Mostrar atributo de encabezados
    • Después de reintento string

      Segundos de espera antes de volver a intentarlo

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
  • Error interno del servidor

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
  • 503

    Servicio no disponible

    Atributo de ocultar encabezados Mostrar atributo de encabezados
    • Después de reintento string

      Segundos de espera antes de volver a intentarlo

    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
    Ocultar atributos de respuesta Mostrar los atributos de respuesta Objeto
    • Código string
    • Error string
    • éxito booleano
POST /api/v1/projects/{id}/service-accounts
curl \
 --request POST 'https://agentengine.mongodb.com/api/v1/projects/{id}/service-accounts' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{
  "description": "string",
  "ip_access_list": [
    "string"
  ],
  "name": "string",
  "roles": [
    "string"
  ],
  "secret_expires_after_hours": 42
}'
Solicitar ejemplos
{
  "description": "string",
  "ip_access_list": [
    "string"
  ],
  "name": "string",
  "roles": [
    "string"
  ],
  "secret_expires_after_hours": 42
}
Ejemplos de respuesta (406)
{
  "detail": "This operation is not available in API version 2026-09-20-preview.",
  "error": 406,
  "errorCode": "OPERATION_NOT_IN_API_VERSION",
  "parameters": [
    "Accept"
  ],
  "reason": "Not Acceptable"
}
{
  "detail": "This operation supports text/event-stream, which the Accept header excludes. Remove unsupported media-type parameters or accept this type with a positive q value.",
  "error": 406,
  "errorCode": "UNACCEPTABLE_MEDIA_TYPE",
  "parameters": [
    "Accept"
  ],
  "reason": "Not Acceptable"
}
{
  "detail": "The requested API version is not supported. Supported versions: 2026-09-20-preview.",
  "error": 406,
  "errorCode": "UNSUPPORTED_API_VERSION",
  "parameters": [
    "Accept"
  ],
  "reason": "Not Acceptable"
}
Ejemplos de respuesta (406)
{
  "detail": "This operation is not available in API version 2026-09-20-preview.",
  "error": 406,
  "errorCode": "OPERATION_NOT_IN_API_VERSION",
  "parameters": [
    "Accept"
  ],
  "reason": "Not Acceptable"
}
Ejemplos de respuesta (201)
{
  "client_secret": "string",
  "service_account": {
    "active_secret": {
      "created_at": "string",
      "expires_at": "string",
      "last_used_at": "string",
      "masked_value": "string"
    },
    "client_id": "string",
    "created_at": "string",
    "description": "string",
    "id": "string",
    "ip_access_list": [
      "string"
    ],
    "is_active": true,
    "is_system_managed": true,
    "name": "string",
    "org_id": "string",
    "owner": "string",
    "project_id": "string",
    "role_assignments": [
      {
        "org_id": "string",
        "project_id": "string",
        "role": "string"
      }
    ],
    "type": "string",
    "updated_at": "string"
  }
}
Ejemplos de respuesta (201)
{
  "client_secret": "string",
  "service_account": {
    "active_secret": {
      "created_at": "string",
      "expires_at": "string",
      "last_used_at": "string",
      "masked_value": "string"
    },
    "client_id": "string",
    "created_at": "string",
    "description": "string",
    "id": "string",
    "ip_access_list": [
      "string"
    ],
    "is_active": true,
    "is_system_managed": true,
    "name": "string",
    "org_id": "string",
    "owner": "string",
    "project_id": "string",
    "role_assignments": [
      {
        "org_id": "string",
        "project_id": "string",
        "role": "string"
      }
    ],
    "type": "string",
    "updated_at": "string"
  }
}
Ejemplos de respuesta (400)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (400)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (403)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (403)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (404)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (404)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (409)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (409)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (429)
# Headers
Retry-After: string

# Payload
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (429)
# Headers
Retry-After: string

# Payload
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (500)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (500)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (503)
# Headers
Retry-After: string

# Payload
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (503)
# Headers
Retry-After: string

# Payload
{
  "code": "string",
  "error": "string",
  "success": true
}