API Reference
NeuralRev Integration API documentation for EMR-to-RCM data synchronization.
The NeuralRev Integration API provides REST endpoints for synchronizing data between your EMR system and NeuralRev. All endpoints use upsert semantics — if a record with the given id already exists it is updated; otherwise a new record is created.
Base URL
https://api.neuralrev.aiOpenAPI Specification
The full OpenAPI 3.1.0 specification is available at:
GET /openapi/jsonAn interactive API explorer is also available in your NeuralRev dashboard at Settings > API Documentation.
Key Concepts
Upsert Semantics
Every request body includes an id field that uniquely identifies the record in your system. This is your external identifier (e.g., your EMR's patient ID). NeuralRev uses this ID to determine whether to create a new record or update an existing one.
This means you can safely send the same record multiple times without creating duplicates.
ID References
When referencing related entities (e.g., patient_id in encounters), use the same id you provided when creating that record via its respective endpoint.
For example, if you created a patient with "id": "PAT-001", reference them in encounters as "patient_id": "PAT-001".
Content Type
All endpoints accept and return application/json unless otherwise specified (document uploads use multipart/form-data).
Available Endpoints
| Method | Endpoint | Description |
|---|---|---|
| POST | /integration/patients | Upsert patient with insurance |
| POST | /integration/payers | Upsert payer |
| POST | /integration/providers | Upsert provider |
| POST | /integration/facilities | Upsert facility |
| POST | /integration/encounters | Upsert encounter |
| POST | /integration/encounters/{id}/documents | Upload document |
| DELETE | /integration/encounters/{id}/documents/{documentId} | Delete document |
Quick Start
# 1. Create a payer
curl -X POST https://api.neuralrev.ai/integration/payers \
-H "x-api-key: nrev_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"id": "PAYER-001", "name": "Blue Cross Blue Shield", "payer_code": "BCBS"}'
# 2. Create a patient with insurance
curl -X POST https://api.neuralrev.ai/integration/patients \
-H "x-api-key: nrev_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"id": "PAT-001",
"first_name": "Jane",
"last_name": "Doe",
"date_of_birth": "1990-01-15T00:00:00Z",
"primary_insurance": {
"payer_id": "PAYER-001",
"policy_number": "POL-12345"
}
}'
# 3. Create a provider
curl -X POST https://api.neuralrev.ai/integration/providers \
-H "x-api-key: nrev_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"id": "PROV-001", "first_name": "John", "last_name": "Smith", "npi": "1234567890"}'
# 4. Create an encounter linking them together
curl -X POST https://api.neuralrev.ai/integration/encounters \
-H "x-api-key: nrev_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"id": "ENC-001",
"patient_id": "PAT-001",
"provider_id": "PROV-001",
"date_of_service": "2026-01-15T09:00:00Z"
}'Next Steps
- Authentication — Set up API key access
- Webhooks — Receive real-time event notifications
- Error Handling — Understand error responses