API Overview
Base URL, versioning, authentication, request format, and rate limiting.
The Crowdee REST API gives you programmatic access to projects, files, verification pipelines, and organization management. All endpoints return JSON and follow conventional HTTP semantics.
Base URL
https://api.crowdee.ai/v2All paths in this reference are relative to this base.
Authentication
The API supports three authentication methods. API keys are recommended for server-to-server integrations.
| Method | Header | When to use |
|---|---|---|
| API Key | X-API-Key: crw_... | Server-to-server, CI/CD, scripts |
| JWT Bearer | Authorization: Bearer <token> | Session-based backend calls |
| OIDC | Cookie / OIDC flow | Browser-based access |
For API keys, include the key on every request:
curl https://api.crowdee.ai/v2/projects \
-H "X-API-Key: crw_YOUR_API_KEY"API keys are scoped to a role (viewer, user, admin) and can optionally be restricted to specific organizations. See Authentication for instructions on generating keys, managing scopes, and understanding role permissions.
Request Format
Send a Content-Type: application/json header and a JSON body for all non-file endpoints:
curl -X POST https://api.crowdee.ai/v2/projects \
-H "X-API-Key: crw_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "News Investigation Q4", "type": "research"}'File uploads use multipart/form-data. Omit the Content-Type header and let curl set it automatically:
curl -X POST https://api.crowdee.ai/v2/projects/proj_abc123/files \
-H "X-API-Key: crw_YOUR_API_KEY" \
-F "file=@footage.mp4"Pagination
List endpoints accept limit and offset query parameters. Responses include a top-level total field with the full count of matching records.
| Parameter | Default | Maximum |
|---|---|---|
limit | 20 | 200 |
offset | 0 | — |
# Fetch page 3 of results at 50 per page
curl "https://api.crowdee.ai/v2/projects?limit=50&offset=100" \
-H "X-API-Key: crw_YOUR_API_KEY"Example paginated response:
{
"data": [...],
"total": 237,
"limit": 50,
"offset": 100
}Rate Limiting
| Auth state | Limit |
|---|---|
| Authenticated | 3,000 requests per 15-minute window |
| Anonymous | 150 requests per 15-minute window |
Every response includes rate limit headers so you can track your usage:
| Header | Description |
|---|---|
X-RateLimit-Limit | Total requests allowed in the current window |
X-RateLimit-Remaining | Requests remaining before the window resets |
X-RateLimit-Reset | Unix timestamp when the window resets |
When X-RateLimit-Remaining reaches 0, all subsequent requests return 429 Too Many Requests until the window resets. Build retry logic with exponential back-off and respect the Retry-After header included in 429 responses.
OpenAPI Spec
A machine-readable OpenAPI 3.1 spec is available at:
https://api.crowdee.ai/v2/openapi.jsonYou can explore every endpoint interactively through the Scalar UI at:
https://api.crowdee.ai/v2The spec is also available at /v2/llms.txt as a plain-text summary optimised for LLM consumption.
How is this guide?
Entity Detection
Extract named entities — persons, organizations, locations, dates, and events — from text or audio files.
MCP Server
Connect AI assistants and agent frameworks to Crowdee via the Model Context Protocol.