Valida o nome secreto e faz proxy da solicitação de upsert para o ECP com escopo para um espaço de trabalho. O escopo do projeto é realizado pelo parâmetro route id path e a organização é derivada desse projeto. Aceita uma sessão JWT ou uma chave de API com escopo de projeto, para que o CI/CD possa alimentar credenciais de construção de curta duração sem um login interativo; uma chave de API deve ter como escopo o projeto nomeado no caminho. O chamador precisa de direitos de gerenciamento de implantação nesse projeto (PROJECT_OWNER, AGENT_DEVELOPER, ORG_ADMIN em projetos nativos do Agent Engine ouSYSTEM_ADMIN).
parâmetros de caminho
-
ID do Projeto
-
ID do espaço de trabalho
-
Nome secreto (maiúsculas no estilo env-var)
corpo, corpo
Obrigatório
Valor secreto e descrição opcional
-
ValueUnchanged deve ser definido explicitamente por um chamador que edite apenas a descrição de um segredo existente; é o que permite que o Valor esteja vazio. Sem ele, um valor vazio é sempre rejeitado - um chamador que envia "" por erro (por exemplo, um bug de modelo ou uma varredura de ambiente desconfigurada) obtém um 400 limpo em vez de deixar silenciosamente o valor antigo no lugar.
Respostas
-
Versão de API não permitida ou malformada, uma operação indisponível no contrato publicado selecionado ou uma representação inaceitável (incluindo parâmetros de tipo de mídia não suportados ou SSE excluído). Falhas existentes de autenticação, autorização e limite de taxa têm precedência.
-
OK
-
Solicitação inválida
-
Proibido
-
Não encontrado
-
Entidade solicitante muito grande
-
Muitas solicitações
-
Gateway incorreto
-
Serviço indisponível
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
}'
{
"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"
}
{}
{}
{
"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
}
{
"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
}