Authentication
Authentication
The Soynade API uses bearer API keys. Every protected request must
include an Authorization header.
Code
API keys are created and managed in the Soynade dashboard. The documentation portal does not manage keys or sign users in directly; account, workspace, project, and key management all live in the dashboard.
Required Headers
For JSON requests:
Code
For OpenAI-compatible SDK clients, use the same API key as the SDK API key and set the base URL to:
Code
Example
Use the same bearer token in raw HTTP requests and OpenAI-compatible SDK clients.
For file upload requests, use multipart/form-data. Your HTTP client normally
sets the multipart boundary automatically, so avoid hard-coding the
Content-Type value for multipart uploads.
API Key Scope
Each key belongs to a workspace and project. Soynade uses that association to attribute usage. Send only the public headers documented here.
Key Rotation
Rotate keys when:
- A key was pasted into a chat, ticket, commit, or log.
- A teammate or integration no longer needs access.
- You are moving from staging to production.
- You want separate keys for different environments or services.
Create a new key, deploy it to the consuming service, verify traffic, then revoke the old key from the dashboard.
Common Authentication Errors
| Status | Meaning | Fix |
|---|---|---|
401 | Missing or invalid bearer token. | Check the Authorization header and key value. |
403 | The request is not authorized, or current voice-policy acceptance is missing. | Check access; for VOICE_POLICY_ACCEPTANCE_REQUIRED, ask the workspace owner to accept the policy in Console. |
402 | Workspace has no available prepaid credits. | Add credits or update billing in the dashboard. |
429 | Rate or daily quota exceeded. | Retry later or review your plan limits. |