Valida el nombre del secreto y reenvía la solicitud upsert a ECP. Los valores del secreto nunca se devuelven. El ámbito del proyecto se transmite mediante el parámetro de ruta id y la organización se deriva de ese proyecto. Acepta un JWT de sesión o una clave API con ámbito de proyecto, de modo que CI/CD puede generar credenciales de compilación de corta duración sin un inicio de sesión interactivo; una clave API debe tener el ámbito del proyecto especificado en la ruta. Un secreto de proyecto es compartido por todos los espacios de trabajo del proyecto, por lo que escribir uno requiere derechos de propiedad del proyecto: PROJECT_OWNER, ORG_ADMIN en proyectos nativos de Agent Engine o SYSTEM_ADMIN. AGENT_DEVELOPER no es suficiente en este caso; utilice el punto final de secreto con ámbito de espacio de trabajo para credenciales por espacio de trabajo.
Cuerpo
Requerido
Valor secreto y descripción opcional
-
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.
-
OK
-
Solicitud incorrecta
-
Forbidden
-
Entidad de solicitud demasiado grande
-
Demasiadas peticiones
-
Puerta de enlace incorrecta
-
Servicio no disponible
curl \
--request PUT 'https://agentengine.mongodb.com/api/v1/projects/{id}/secrets/{name}' \
--header "Authorization: $API_KEY" \
--header "Content-Type: application/json" \
--data '{
"description": "string",
"value": "string",
"value_unchanged": true
}'
{
"description": "string",
"value": "string",
"value_unchanged": true
}
{
"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"
}
{
"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"
}
{
"created_at": "string",
"description": "string",
"name": "string",
"updated_at": "string",
"version": 42
}
{
"created_at": "string",
"description": "string",
"name": "string",
"updated_at": "string",
"version": 42
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
# Headers
Retry-After: string
# Payload
{
"code": "string",
"error": "string",
"success": true
}
# Headers
Retry-After: string
# Payload
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
{
"code": "string",
"error": "string",
"success": true
}
# Headers
Retry-After: string
# Payload
{
"code": "string",
"error": "string",
"success": true
}
# Headers
Retry-After: string
# Payload
{
"code": "string",
"error": "string",
"success": true
}