Authorization header with a valid key.
API keys
API keys are workspace-scoped: each key authorizes access to one workspace’s resources. Generate keys from Workspace settings → API keys.Key formats
Test keys are useful when integrating: you can build against the API without risking production data. Switch to live keys when you ship.
Generating a key
1
Open Workspace settings → API keys
You must be an admin or owner of the workspace.
2
Click 'Create new key'
Give it a descriptive name (
zapier-integration, internal-dashboard, ci-pipeline).3
Choose scopes
Default is full access. For tighter security, scope to specific resources (e.g.,
projects:read only). See Scopes below.4
Set an expiration (optional)
Keys can expire after a set duration (30 days, 90 days, 1 year). Useful for temporary access.
5
Copy and store the key
The key is shown once — copy it now. You won’t see it again. Store in a secrets manager or environment variable.
Using a key
Pass the key in theAuthorization header as a bearer token:
All requests to the vly.ai API must include your API key in the Authorization header as a bearer token. Generate keys from your Workspace settings → API keys.
With the SDKs
- TypeScript
- Python
- CLI
Scopes
Scopes limit what a key can do. Useful for keys that only need to read data, or only manage specific resource types.
Combine scopes by listing multiple in the API key creation dialog.
OAuth (for third-party integrations)
If you’re building a public integration that other vly customers will install, use OAuth 2.0 instead of asking customers for their API key.access_token exactly like an API key.
To register an OAuth app, contact api@vly.ai. The full OAuth reference is forthcoming.
Key rotation
Rotate keys periodically and immediately if you suspect compromise:1
Create a new key
Same workspace, same scopes. Note its name distinctively (
prod-2026-04 etc.).2
Update consumers to use the new key
Deploy the change to your code, scripts, integrations.
3
Verify the new key works
Watch logs / monitoring; confirm no unexpected
401s.4
Revoke the old key
From the API keys settings page. Revocation takes effect immediately.
Audit log
Every API request is logged with the key used, the endpoint, the IP, and the response status. View the audit log in Workspace settings → Audit log, filtered to API events. Useful for:- Verifying a key isn’t being abused.
- Debugging “why did this resource get deleted?” — the audit log answers.
- Compliance reporting.
Security best practices
Never commit keys to source control
Use
.env, environment variables, or a secrets manager. Add *.env* to .gitignore.Use scoped keys
A read-only key is much less dangerous if leaked than a full-access key. Default to least privilege.
Set expirations on temporary keys
For one-off scripts or short-lived integrations, set an expiration so forgotten keys auto-revoke.
Rotate keys quarterly
Even without suspected compromise, periodic rotation limits exposure window.
Use OAuth for third-party apps
Don’t ask other users for their vly API key. Use OAuth so customers can audit and revoke from their side.
Monitor unexpected usage
Set up alerts in vly’s dashboard for spikes in API usage — a sign that a key might be compromised.
Errors
Authentication errors return401 Unauthorized:
Related
API introduction
Base URLs, common patterns, SDKs.
Errors
Full error code reference.
Webhooks SDK
Webhook signature verification.
