Skip to main content
The Secrets API lets you list, read, update, and delete secrets stored in HashiCorp Vault. Secrets are scoped to the current environment (e.g., oss).

List Secrets

GET /api/v1/secrets
Returns a JSON array of secret names for the current environment.

Example

curl -s http://localhost:8080/api/v1/secrets | jq .

Response

["activemq", "anthropic", "chroma", "embedding", "kafka-producer", "minio", "mongodb", "ollama", "openai", "pgvector", "postgres", "qdrant", "weaviate"]

Get Secret

GET /api/v1/secrets/{name}
ParameterTypeDescription
namepathSecret name
Sensitive fields (password, apiKey, secretKey, token, secret) are always masked as ••••••••. Non-sensitive fields show their actual values.

Example

curl -s http://localhost:8080/api/v1/secrets/anthropic | jq .

Response

{
  "name": "anthropic",
  "fields": {
    "endpoint": "https://api.anthropic.com/v1/messages",
    "model": "claude-sonnet-4-6",
    "apiKey": "••••••••"
  }
}

Error

Returns 404 if the secret does not exist.

Update Secret

Create or update a secret.
PUT /api/v1/secrets/{name}
Content-Type: application/json
ParameterTypeDescription
namepathSecret name
bodyJSONKey-value pairs to store

Example

curl -X PUT http://localhost:8080/api/v1/secrets/anthropic \
  -H "Content-Type: application/json" \
  -d '{
    "endpoint": "https://api.anthropic.com/v1/messages",
    "model": "claude-sonnet-4-6",
    "apiKey": "sk-ant-..."
  }'

Response

{"status": "ok"}

Delete Secret

DELETE /api/v1/secrets/{name}
ParameterTypeDescription
namepathSecret name to delete

Example

curl -X DELETE http://localhost:8080/api/v1/secrets/my-secret

Response

{"status": "ok"}