Engine · REST API v1
Build on OVRIX.
A versioned REST API with JWT authentication, per-tenant rate limiting, and predictable JSON responses. Every endpoint is documented with request/response schemas and curl examples.
Authentication
JWT Bearer Tokens
All API requests must include a valid JWT in the Authorization header. Tokens expire after 15 minutes. Use the refresh endpoint to obtain a new access token.
bash
# Obtain access token curl -X POST https://api.OVRIX.io/v1/auth/login \ -H "Content-Type: application/json" \ -d '{"email":"admin@acme.co","password":"••••••••"}' # Use the token curl https://api.OVRIX.io/v1/employees \ -H "Authorization: Bearer eyJhbGciOiJSUzI1..." \ -H "X-Tenant: acme"
Rate Limits
Employees
GET
/employees
List all employees
Returns a paginated list of employees for the authenticated tenant. Supports filtering by department, status, and hire date.
Query Parameters
| Name | Type | Description |
|---|---|---|
| page | integer | Page number (default: 1) |
| limit | integer | Results per page, max 100 (default: 20) |
| department | string | Filter by department slug |
| status | enum | active | inactive | on_leave |
JSON Response
{
"data": [
{
"id": "01HV3...",
"email": "jane.doe@acme.co",
"firstName": "Jane",
"lastName": "Doe",
"department": "engineering",
"status": "active",
"hiredAt": "2024-03-01T00:00:00Z"
}
],
"meta": { "page": 1, "limit": 20, "total": 148 }
}
POST
/employees
Create employee
| Name | Type | Required | Description |
|---|---|---|---|
| string | required | Unique within tenant | |
| firstName | string | required | — |
| lastName | string | required | — |
| department | string | optional | Department slug |
| roleId | uuid | optional | RBAC role to assign |
Analytics
GET
/analytics/kpi
KPI summary
JSON Response
{
"mrr": 184230,
"arr": 2210760,
"churnRate": 0.021,
"dau": 48217,
"mau": 142800,
"apiLatencyP95Ms": 42,
"asOf": "2026-05-19T00:00:00Z"
}