Skip to main content

Error Response Format

All API errors follow a standard envelope:

Handling in Dart

Error Code Reference

Rate Limiting

The API enforces rate limits at multiple levels. When exceeded, you’ll receive a 429 response.

Limits

Socket.io Event Limits

Response Headers

Every response includes rate limit info:

Handling 429 in Dart

Pagination

Paginated endpoints accept page and limit query parameters and return a standard envelope:
Response:

Paginated Endpoints

  • GET /api/v1/jobs — filter by status
  • GET /api/v1/notifications — user notifications
  • GET /api/v1/admin/users — filter by role
  • GET /api/v1/admin/mechanics — mechanic list
  • GET /api/v1/admin/jobs — filter by status
  • GET /api/v1/ratings/mechanic/{id} — mechanic ratings

Dart Helper

Validation Errors (422)

When request validation fails (Zod), the errors field contains field-level details:
Map these to form field errors in your UI: