API reference
The Charlie Mac REST API uses JSON over HTTPS. All endpoints require authentication via a Bearer token obtained through the Azure AD OAuth2 flow.
Base URL
https://api.charliemac.com/v1
Authentication
All requests must include an Authorization header:
Authorization: Bearer <access_token>
See Authentication for how to obtain a token.
Rate limits
| Tier | Requests per minute |
|---|---|
| Standard | 300 |
| Premium | 1,500 |
| Enterprise | Unlimited |
Rate limit headers are returned on every response:
X-RateLimit-Limit: 300
X-RateLimit-Remaining: 247
X-RateLimit-Reset: 1714000000
Response format
All responses return JSON. Successful responses use 2xx status codes. Errors follow a consistent structure:
{
"error": {
"code": "RESOURCE_NOT_FOUND",
"message": "The requested document could not be found.",
"requestId": "req_abc123"
}
}