REST API overview
Authentication, endpoints, and response formats for the OFFIN Cloud API
Base URL
https://api.offinhealthcare.com/v1
Authentication
All API requests must include a valid JWT bearer token in the Authorization header:
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Obtain a token via:
POST /v1/auth/login
Content-Type: application/json
{
"email": "admin@hospital.com",
"password": "your-password"
}
For machine-to-machine (gateway sync), use the license key header instead:
X-License-Key: your-gateway-license-key
Response format
All responses follow the standard envelope:
{
"success": true,
"data": { ... },
"meta": { "page": 1, "total": 42 }
}
Error responses:
{
"success": false,
"error": "Invalid license key",
"code": "LICENSE_INVALID"
}
Rate limits
| Plan | Requests/minute |
|---|---|
| Basic | 60 |
| Professional | 200 |
| Enterprise | Unlimited |
Core endpoints
| Method | Endpoint | Description |
|---|---|---|
| POST | /auth/login | Obtain JWT token |
| GET | /tenants/me | Current tenant info |
| GET | /ecg | List ECG records |
| GET | /ecg/:id | Get single ECG record |
| POST | /sync/ingest | Ingest records from gateway |
| GET | /patients | List patients |
| GET | /ai/queue | AI interpretation queue |
| GET | /fhir/Patient | FHIR R4 Patient resource |
| GET | /fhir/Observation | FHIR R4 Observation resource |
Full Postman collection available at
/docs/postman-collection.json