Secrets
Store credentials once and reference them by name from workflows. Values are never returned by the API.
Beta
Create a Secret
POST /api/v1/secrets takes name and value (required), plus optional integration, kind and allowed_domains.
curl -X POST https://api.alterlab.io/api/v1/secrets -H "X-API-Key: $ALTERLAB_API_KEY" -H "Content-Type: application/json" -d '{"name": "crm-token", "value": "REDACTED", "allowed_domains": ["api.example.com"]}'List Secrets
GET /api/v1/secrets lists secrets with a masked preview. Filter with the integration query parameter.
curl "https://api.alterlab.io/api/v1/secrets?integration=hubspot" -H "X-API-Key: $ALTERLAB_API_KEY"Get a Secret
GET /api/v1/secrets/{secret_id} returns metadata and a masked preview, never the stored value.
curl https://api.alterlab.io/api/v1/secrets/SECRET_ID -H "X-API-Key: $ALTERLAB_API_KEY"Rotate a Secret
PUT /api/v1/secrets/{secret_id} with a new value replaces the stored value.
curl -X PUT https://api.alterlab.io/api/v1/secrets/SECRET_ID -H "X-API-Key: $ALTERLAB_API_KEY" -H "Content-Type: application/json" -d '{"value": "NEW_VALUE"}'Delete a Secret
DELETE /api/v1/secrets/{secret_id} removes the secret and returns 204.
curl -X DELETE https://api.alterlab.io/api/v1/secrets/SECRET_ID -H "X-API-Key: $ALTERLAB_API_KEY"Share With a Workspace
Share a secret to an organization workspace through the workspace share endpoint with resource type secret. Teammates see a masked preview only. See the Organizations guide.