API Documentation
Access your AI readiness assessments and reports programmatically using the Curble API v1.
Authentication
All API requests require a Bearer token. Create an API key from your dashboard.
curl -H "Authorization: Bearer ck_live_your_key_here" \ https://curble.com/api/v1/assessments
Base URL
https://curble.com/api/v1Rate Limits
Default: 100 requests per minute per API key. Rate limit headers are included in every response.
Endpoints
GET
/api/v1/assessmentsList all your assessments with pagination and filtering.
Parameters
statusstring— Filter by status (PENDING, IN_PROGRESS, SUBMITTED, ANALYZING, COMPLETED, FAILED)limitnumber— Results per page (max 100, default 20)offsetnumber— Pagination offset (default 0)Response
{
"data": [
{
"id": "clx...",
"email": "user@company.com",
"name": "Jane Smith",
"company": "Acme Corp",
"industry": "Technology",
"companySize": "MEDIUM",
"tier": "QUICK_SCAN",
"status": "COMPLETED",
"scores": { "overall": 62, "dimensions": [...] },
"startedAt": "2026-04-01T...",
"completedAt": "2026-04-01T..."
}
],
"pagination": { "total": 5, "limit": 20, "offset": 0, "hasMore": false }
}GET
/api/v1/reportsList all generated reports for your assessments.
Parameters
assessmentIdstring— Filter by assessment IDlimitnumber— Results per page (max 100, default 20)offsetnumber— Pagination offset (default 0)Response
{
"data": [
{
"id": "clx...",
"assessmentId": "clx...",
"title": "AI Readiness Report",
"content": { ... },
"createdAt": "2026-04-01T..."
}
],
"pagination": { "total": 1, "limit": 20, "offset": 0, "hasMore": false }
}GET
/api/v1/keysList your active API keys (requires session auth).
Response
{
"data": [
{
"id": "clx...",
"name": "Production",
"keyPrefix": "ck_live_abcd1234",
"scopes": ["read", "write"],
"lastUsedAt": "2026-04-01T...",
"createdAt": "2026-04-01T..."
}
]
}POST
/api/v1/keysCreate a new API key (requires session auth).
Parameters
namestring— Key name (required)scopesstring[]— Permissions: ["read"], ["read", "write"]expiresInDaysnumber— Auto-expire after N days (1-365)Response
{
"data": {
"id": "clx...",
"name": "My Key",
"key": "ck_live_abc123...",
"keyPrefix": "ck_live_abc12345",
"scopes": ["read", "write"]
},
"warning": "Save this API key now. It cannot be retrieved again."
}Error Codes
| Code | Meaning |
|---|---|
| 400 | Bad request — invalid parameters |
| 401 | Unauthorized — missing or invalid API key |
| 404 | Resource not found |
| 429 | Rate limit exceeded |
| 500 | Internal server error |
Ready to integrate?
Create an API key from your dashboard and start building.