Authentication
All API requests must be authenticated using an API key.
API Key Authentication
Include your API key in the X-API-Key header:
curl -H "X-API-Key: wz_live_your_key_here" \
https://app.wazera.com/api/v1/account/me
Generating API Keys
- Log in to your Wazera dashboard
- Navigate to API Keys
- Click Generate New Key
- Copy the key immediately — it won't be shown again
Security Note: API keys are stored as hashed values. We cannot retrieve your key after creation. If you lose it, generate a new one and revoke the old key.
API Key Scopes
Keys can be created with specific scopes to limit access:
| Scope | Description |
|---|---|
messages:send |
Send text and template messages |
messages:read |
Read message status and history |
contacts:write |
Create and update contacts |
contacts:read |
List and view contacts |
automations:trigger |
Trigger automation flows |
webhooks:manage |
Manage webhook endpoints |
account:read |
View account information |
Rate Limits
API requests are rate-limited per key:
| Plan | Rate Limit |
|---|---|
| Starter | 60 requests/minute |
| Growth | 300 requests/minute |
| Pro | 1,000 requests/minute |
| Enterprise | Custom |
Rate limit headers are included in every response:
X-RateLimit-Limit: 300
X-RateLimit-Remaining: 299
X-RateLimit-Reset: 1679529600
Using with Laravel Package
// config/wazera.php
return [
'api_key' => env('WAZERA_API_KEY'),
'base_url' => env('WAZERA_BASE_URL', 'https://app.wazera.com/api/v1'),
'timeout' => env('WAZERA_TIMEOUT', 30),
'retries' => env('WAZERA_RETRIES', 3),
];