Skip to main content
The AI Review API is a JSON REST API. All endpoints are served from the same server that hosts the web dashboard.

Base URL

Every endpoint is prefixed with /api:
https://your-domain.com/api
Replace your-domain.com with the hostname where you deployed AI Review.

Response format

All responses follow a shared envelope from the @ai-review/contracts package:
{
  "data": { ... },
  "meta": {
    "pagination": {
      "page": 1,
      "pageSize": 20,
      "total": 42,
      "totalPages": 3
    }
  },
  "error": null
}
data
object
The response payload. Shape varies per endpoint.
meta
object
Optional metadata. Paginated list endpoints always include meta.pagination.
error
object | null
Present when the request fails. Contains title, status, and optionally detail.

Authentication

The API supports two authentication methods:
  • Session cookie — used automatically by the web dashboard after login.
  • API key — pass an API key generated from the dashboard in the Authorization header:
    Authorization: Bearer <api-key>
    
See Authentication for full details.

Rate limiting

Rate-limiting middleware is registered globally. The default limits are configured at the server level. If you exceed the limit you will receive a 429 Too Many Requests response.

Error responses

The API uses standard HTTP status codes:
StatusMeaning
200Success
202Accepted (async operation queued)
400Bad request / validation error
401Unauthenticated
403Forbidden — insufficient permissions
404Resource not found
429Rate limit exceeded
500Internal server error
Error bodies follow the same envelope structure with a non-null error field:
{
  "error": {
    "title": "NOT_FOUND",
    "status": 404,
    "detail": "Review not found"
  }
}

Endpoint groups

GroupBase pathDescription
Reviews/api/reviewsTrigger and query AI code reviews
Projects/api/projectsManage synced projects and webhook configuration
Platform Configs/api/platform-configsManage GitLab / GitHub platform connections
Runners/api/runnersRegister and monitor external review runners
Notifications/api/notificationsManage notification config and history
Webhooks/api/webhookReceive events from GitLab and GitHub
Health/api/healthServer health and readiness checks

Build docs developers (and LLMs) love