Programmatic access for integrations
Generate API keys for server-to-server authentication. Keys are SHA-256 hashed at rest and scoped with fine-grained permissions: read, update-data, delete-data, update-model, and delete-model.
Store securely
The raw key is returned only once at creation time. Store it in a secrets manager or environment variable. It cannot be retrieved again.
Minimum permissions
Grant only the permissions your integration needs. A sync integration may need read + update-data, not delete-model.
Rotate regularly
Deactivate old keys and generate new ones periodically. Use the deactivate endpoint before deleting to ensure a graceful transition.
Key format
Keys follow the format sigma_sk_live_abc123def456ghi789 and are sent via the X-Sigma-ApiKey header.
Permissions
| Permission | Grants access to |
|---|---|
read |
Read all resources: records, schemas, catalogs, dimensions, option lists, workflows |
update-data |
Create and update records, variants, catalog assignments |
delete-data |
Delete records, variants, catalog assignments |
update-model |
Create and update schemas, attributes, dimensions, option lists, workflows, roles |
delete-model |
Delete schemas, attributes, dimensions, option lists, workflows, roles |
Endpoints
| Method | Endpoint | Description |
|---|---|---|
| GET | /api-keys |
List all API keys (hashes hidden) |
| POST | /api-keys |
Generate a new API key |
| POST | /api-keys/:id/deactivate |
Deactivate an API key |
| DELETE | /api-keys/:id |
Delete an API key |
List all API keys
Returns all API keys for the current tenant. The key hash is never included in list responses for security.
Generate new API key
Generate a new API key with the specified name and permissions. The raw key is returned only in this response — store it immediately. The key is SHA-256 hashed before storage.
Request body
| Field | Type | Description |
|---|---|---|
name |
string | Human-readable name for the key |
permissions |
string[] | Array of: read, update-data, delete-data, update-model, delete-model |
Important: save the raw key now
The rawKey field is only returned in the create response. After this, only the SHA-256 hash is stored. If you lose the key, you must generate a new one.
Using an API key
Send the raw key in the X-Sigma-ApiKey header with every request.
Deactivate API key
Deactivate an API key without deleting it. Deactivated keys are rejected on all endpoints. This allows a graceful key rotation: create new key, update integrations, deactivate old key, then delete.
Delete API key
Permanently delete an API key. This action is irreversible. It is recommended to deactivate first to ensure no active integrations are using the key.