Crear o actualizar el secreto del espacio de trabajo

PUT /api/v1/projects/{id}/workspaces/{workspace_id}/secrets/{name}

Valida el nombre secreto y reenvía la solicitud upsert a ECP con ámbito en un espacio de trabajo. El ámbito del proyecto se define mediante el parámetro de ruta id y la organización se deriva de dicho proyecto. Acepta un JWT de sesión o una clave API con ámbito de proyecto, de modo que CI/CD pueda generar credenciales de compilación temporales sin necesidad de un inicio de sesión interactivo; la clave API debe tener ámbito en el proyecto especificado en la ruta. El usuario necesita permisos de administración de despliegue en dicho proyecto (PROJECT_OWNER, AGENT_DEVELOPER, ORG_ADMIN en proyectos nativos de Agent Engine o SYSTEM_ADMIN).

Parámetros de path

  • ID string Requerido

    ID del proyecto

  • ID del espacio de trabajo string Requerido

    ID del espacio de trabajo

  • Nombre string Requerido

    Nombre secreto (estilo variable de entorno en mayúsculas)

application/json

Cuerpo Requerido

Valor secreto y descripción opcional

  • Descripción string
  • Valor string
  • valor_sin_cambiar booleano

    ValueUnchanged debe ser establecido explícitamente por quien realiza la llamada, editando únicamente la descripción de un secreto existente; es lo que permite que Value esté vacío. Sin él, un Value vacío siempre es rechazado: quien realiza la llamada y envía "" por error (por ejemplo, un error de plantilla o una variable de entorno no definida) recibe un 400 limpio en lugar de dejar silenciosamente el valor anterior.

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.

  • 200

    OK

  • 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
  • Entidad de solicitud demasiado grande

    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
  • Puerta de enlace 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
  • 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
PUT /api/v1/projects/{id}/workspaces/{workspace_id}/secrets/{name}
curl \
 --request PUT 'https://agentengine.mongodb.com/api/v1/projects/{id}/workspaces/{workspace_id}/secrets/{name}' \
 --header "Authorization: $API_KEY" \
 --header "Content-Type: application/json" \
 --data '{
  "description": "string",
  "value": "string",
  "value_unchanged": true
}'
Solicitar ejemplos
{
  "description": "string",
  "value": "string",
  "value_unchanged": true
}
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 (200)
{}
Ejemplos de respuesta (200)
{}
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 (413)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (413)
{
  "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 (502)
{
  "code": "string",
  "error": "string",
  "success": true
}
Ejemplos de respuesta (502)
{
  "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
}