Authentication
The API supports two authentication methods.
1. Session-Based (Internal)
When using the web application, authentication is handled automatically via Supabase Auth. After login, the frontend includes the JWT access token in all requests.
2. API Key (External)
For third-party integrations, generate an API key from the API Keys page in the dashboard.
Using Your API Key
Include the key in the X-API-Key header:
bash
curl -H "X-API-Key: YOUR_API_KEY" \
https://your-domain.com/api/v1/audio/uploads
API Key Security
- Do not expose API keys in client-side code
- Do not commit API keys to version control
- Use environment variables to store keys
- Regenerate keys immediately if compromised
- Revoke unused keys from the dashboard
Rate Limiting
Every user has a plan that defines token quotas:
| Token Type | Description | |
|---|---|---|
| Write (W) | Consumed on uploads and mutations | |
| Read (R) | Consumed on status checks and playback | |
| Compute (⚡) | Processing power — 1 unit per minute of audio |
When you exceed your quota, the API returns a 429 Too Many Requests response.