Resource Hierarchy
Ark’s API is organized around a Platform → Tenant → Domain → Email hierarchy. If you’re building a white-label email platform, most resources support atenant_id parameter to scope operations to a specific customer:
| Resource | Description | Tenant-scoped? |
|---|---|---|
| Emails | Send and track transactional emails | ✅ Optional |
| Tenants | Manage your customers on the platform | N/A (top-level) |
| Domains | Configure sending domains with DNS verification | ✅ Optional |
| Suppressions | Manage bounce and complaint suppression lists | ✅ Optional |
| Webhooks | Real-time event notifications | ✅ Optional |
| Credentials | API keys for authentication | ✅ Optional |
| Tracking | Open and click tracking domains | ✅ Optional |
Authentication
All API requests require authentication via Bearer token:Request Format
Send request bodies as JSON with theContent-Type: application/json header:
Response Format
HTTP Status Codes
| Status | Description |
|---|---|
200 | Success |
201 | Resource created |
400 | Bad request - check your request body |
401 | Unauthorized - invalid or missing API key |
403 | Forbidden - insufficient permissions |
404 | Resource not found |
429 | Rate limit exceeded |
500 | Server error |
Rate Limiting
See Rate Limits for detailed information.Pagination
List endpoints return paginated results using page-number pagination:page and perPage query parameters to navigate:
| Parameter | Type | Default | Description |
|---|---|---|---|
page | integer | 1 | Page number (1-indexed) |
perPage | integer | 30 | Items per page (max 100) |
Idempotency
For safe retries on network errors, include anIdempotency-Key header on POST requests:
API Resources
Emails
Send and manage transactional emails
Tenants
Create and manage white-label customers
Domains
Configure sending domains with DNS verification
Suppressions
Manage bounce and complaint suppression lists
Webhooks
Configure real-time event notifications
Tracking
Manage open and click tracking domains
