Integrate AllCode Nexus programmatically using the REST API. Use these endpoints to pull metrics, manage users, and generate billing reports for your internal systems.
All API requests require a Bearer token obtained from Amazon Cognito.
Authorization: Bearer <access_token>
Exchange your Cognito credentials for an access token:
curl -X POST https://auth.nexus.allcode.com/oauth2/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials&client_id=<your_client_id>&client_secret=<your_client_secret>"
You can find your API client credentials in the Nexus portal under Settings → API Access.
Tokens are valid for 1 hour. Cache and reuse tokens until expiry to avoid unnecessary token requests.
https://api.nexus.allcode.com/v1
Returns aggregated usage metrics for your organization.
Query Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
start_date |
string | Yes | Start date (ISO 8601, e.g., 2026-01-01) |
end_date |
string | Yes | End date (ISO 8601, e.g., 2026-01-31) |
group_by |
string | No | Group results by user, team, model, or day |
Example Request:
curl -H "Authorization: Bearer <token>" \
"https://api.nexus.allcode.com/v1/api/metrics/summary?start_date=2026-05-01&end_date=2026-05-27&group_by=user"
Example Response:
{
"period": {
"start": "2026-05-01T00:00:00Z",
"end": "2026-05-27T23:59:59Z"
},
"total_input_tokens": 12450000,
"total_output_tokens": 8320000,
"total_requests": 4521,
"active_users": 23,
"breakdown": [
{
"user": "jane.doe@company.com",
"input_tokens": 1250000,
"output_tokens": 890000,
"requests": 412
}
]
}
Returns a list of users in your organization with their current status and quota usage.
Query Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
status |
string | No | Filter by active, inactive, or all (default: all) |
limit |
integer | No | Results per page (default: 50, max: 200) |
offset |
integer | No | Pagination offset |
Example Request:
curl -H "Authorization: Bearer <token>" \
"https://api.nexus.allcode.com/v1/api/users?status=active&limit=10"
Example Response:
{
"total": 45,
"users": [
{
"email": "jane.doe@company.com",
"status": "active",
"last_active": "2026-05-27T14:32:00Z",
"quota_policy": "Engineering Standard",
"tokens_used_today": 523000,
"token_limit_today": 2000000
}
]
}
Returns billing data for cost attribution and chargeback.
Query Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
month |
string | Yes | Billing month (format: YYYY-MM) |
format |
string | No | Response format: json (default) or csv |
Example Request:
curl -H "Authorization: Bearer <token>" \
"https://api.nexus.allcode.com/v1/api/billing/report?month=2026-05&format=json"
Example Response:
{
"month": "2026-05",
"organization": "Acme Corp",
"total_cost_usd": 1247.83,
"total_tokens": 45200000,
"by_user": [
{
"email": "jane.doe@company.com",
"input_tokens": 3200000,
"output_tokens": 2100000,
"cost_usd": 87.42
}
],
"by_model": [
{
"model": "claude-sonnet-4-20250514",
"input_tokens": 30000000,
"output_tokens": 20000000,
"cost_usd": 890.00
}
]
}
All errors follow a consistent format:
{
"error": {
"code": "UNAUTHORIZED",
"message": "Invalid or expired access token"
}
}
| HTTP Status | Code | Description |
|---|---|---|
| 401 | UNAUTHORIZED |
Missing or invalid Bearer token |
| 403 | FORBIDDEN |
Token valid but insufficient permissions |
| 404 | NOT_FOUND |
Endpoint or resource not found |
| 422 | VALIDATION_ERROR |
Invalid query parameters |
| 429 | RATE_LIMITED |
Too many requests (limit: 100/minute) |
| 500 | INTERNAL_ERROR |
Server error — retry with backoff |
API requests are limited to 100 requests per minute per organization. The response includes rate limit headers:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 87
X-RateLimit-Reset: 1716825600