Base URL
All API requests should be made to:All requests must use HTTPS. HTTP requests will be rejected.
Request Format
Content Type
All POST, PUT, and PATCH requests must include theContent-Type header:
Request Body
Request bodies should be valid JSON:Response Format
Success Response
Successful requests return appropriate HTTP status codes and JSON responses: Example (200 OK):Error Response
Errors return a consistent structure:code: Machine-readable error identifiermessage: Human-readable error descriptiondetails: Additional context (optional)
HTTP Status Codes
The Minimo API uses standard HTTP status codes:| Code | Meaning | Description |
|---|---|---|
200 | OK | Request succeeded |
201 | Created | Resource successfully created |
400 | Bad Request | Invalid request format or parameters |
401 | Unauthorized | Missing or invalid API key |
403 | Forbidden | API key lacks required permissions |
404 | Not Found | Resource doesn’t exist |
422 | Unprocessable Entity | Validation error (invalid data) |
429 | Too Many Requests | Rate limit exceeded |
500 | Internal Server Error | Server error (contact support) |
503 | Service Unavailable | Temporary service disruption |
Common Error Codes
| Error Code | HTTP Status | Description |
|---|---|---|
unauthorized | 401 | Invalid or missing API key |
forbidden | 403 | Insufficient permissions |
not_found | 404 | Resource not found |
validation_error | 422 | Invalid input data |
rate_limit_exceeded | 429 | Too many requests |
template_not_approved | 422 | WhatsApp template not approved by Meta |
invalid_phone_number | 422 | Phone number format invalid |
duplicate_resource | 409 | Resource already exists |
Pagination
List endpoints support pagination using query parameters:Parameters
page: Page number (default:1)limit: Items per page (default:25, max:100)
Example Request
Response Structure
page: Current page numberlimit: Items per pagetotal: Total number of itemstotalPages: Total number of pageshasNext: Whether there’s a next pagehasPrevious: Whether there’s a previous page
Filtering & Sorting
Filtering (Coming Soon)
Some endpoints support filtering using query parameters:Sorting (Coming Soon)
Use thesort parameter to order results:
Timestamps
All timestamps are returned in ISO 8601 format (UTC):Idempotency
Some endpoints support idempotency keys to prevent duplicate operations:Rate Limiting
Headers
All responses include rate limit information:X-RateLimit-Limit: Maximum requests per windowX-RateLimit-Remaining: Requests remaining in current windowX-RateLimit-Reset: Unix timestamp when limit resets
Handling Rate Limits
When you exceed the rate limit, you’ll receive a429 Too Many Requests response:
- Monitor
X-RateLimit-Remainingheader - Implement exponential backoff
- Respect the
Retry-Afterheader value - Cache responses when possible
Versioning
The current API version is v1. The version is included in the base URL:Currently, the version prefix is not required and defaults to v1. Future versions will require explicit versioning.
CORS (Cross-Origin Requests)
The Minimo API supports CORS for client-side requests. However, we recommend making API calls from your server to keep API keys secure. Allowed origins are configurable per API key in your dashboard settings.Webhooks (Coming Soon)
Minimo will support webhooks for real-time event notifications:- Message delivered
- Message failed
- Contact created/updated
- Template approved/rejected
Testing
Test Mode (Coming Soon)
Use test mode to experiment without affecting production data:mn-test- prefix.
Need Help?
If you encounter unexpected behavior or have questions about API conventions:- Email: [email protected]
- Check API Status for known issues