FHIR
Get event and entity counts for the workspace's clinical data.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Successful Response
Missing or invalid API key.
Workspace not found.
GET /v1/{workspace_id}/fhir/status HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"configured": true,
"connector_type": "text",
"event_count": 1,
"entity_count": 1,
"entity_type_counts": {
"ANY_ADDITIONAL_PROPERTY": 1
},
"resource_type_counts": {
"ANY_ADDITIONAL_PROPERTY": 1
}
}Import a FHIR Bundle. Decomposes supported resources into upserted world events and creates patient entities. Unsupported resource types are skipped and reported; omitted resources are not deleted.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
fhir_importWhen true, identical re-uploads of the same FHIR resource are skipped via content-hash dedup. Set to false to force emission regardless of content changes.
trueControls resources whose resourceType is missing or not projected by platform FHIR APIs. 'error' skips the resource and adds a per-resource error; 'skip' skips it without adding an error. Unsupported resources are never emitted as silent raw world events.
errorPossible values: Successful Response
000false0falseFHIR import uses workspace + resourceType + id as the natural key. Identical re-uploads can be deduped; changed resources supersede prior current events.
same_resource_id_upsertResources omitted from a later bundle are not deleted or archived by import.
absent_resources_persistInvalid bundle format.
Validation Error
POST /v1/{workspace_id}/fhir/import HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 202
{
"bundle": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"source": "fhir_import",
"source_system": "text",
"data_source_id": "123e4567-e89b-12d3-a456-426614174000",
"dedup": true,
"unsupported_resource_policy": "error"
}{
"events_created": 1,
"events_skipped": 0,
"events_updated": 0,
"entities_created": 1,
"entities_updated": 1,
"error_count": 0,
"errors": [
"text"
],
"errors_truncated": false,
"unsupported_resource_count": 0,
"unsupported_resources": [
{
"resource_type": "text",
"resource_id": "text",
"location": "text",
"reason": "text"
}
],
"unsupported_resources_truncated": false,
"upsert_semantics": "same_resource_id_upsert",
"absence_semantics": "absent_resources_persist"
}Frontend-ready patient list with flattened demographics, conditions, medications, allergies, and insurance. Optionally scoped to a specific data source via data_source_id.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Search by name
Scope to data source
200Successful Response
falseValidation Error
GET /v1/{workspace_id}/fhir/views/patients HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"patients": [
{
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"name": "text",
"first_name": "text",
"last_name": "text",
"birth_date": "text",
"gender": "text",
"phone": "text",
"email": "text",
"mrn": "text",
"address": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"address_state": "text",
"address_postal_code": "text",
"address_city": "text",
"active_conditions": [
"text"
],
"active_medications": [
"text"
],
"allergies": [
"text"
],
"insurance": [
{
"ANY_ADDITIONAL_PROPERTY": "anything"
}
],
"primary_payer_name": "text",
"practice_payer_id": "text",
"member_id": "text",
"policyholder_name": "text",
"policyholder_relationship": "text",
"policyholder_dob": "text",
"source_system": "text",
"canonical_id": "text",
"event_count": 0,
"confidence": 1,
"last_event_at": "text",
"created_at": "text"
}
],
"total": 1,
"has_more": false,
"next_offset": 1
}Frontend-ready practitioner list with name, NPI, specialty, phone. Optionally scoped to a data source.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Search by name
Scope to data source
200Successful Response
falseValidation Error
GET /v1/{workspace_id}/fhir/views/practitioners HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"practitioners": [
{
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"name": "text",
"npi": "text",
"specialty": "text",
"phone": "text",
"email": "text",
"member_id": "text",
"scheduling_eligible": true,
"source_system": "text",
"canonical_id": "text",
"event_count": 0,
"last_event_at": "text"
}
],
"total": 1,
"has_more": false,
"next_offset": 1
}Frontend-ready location list with name, address, phone, hours. Optionally scoped to a data source.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Search by name
Scope to data source
200Successful Response
falseValidation Error
GET /v1/{workspace_id}/fhir/views/locations HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"locations": [
{
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"name": "text",
"address": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"address_line": "text",
"city": "text",
"state": "text",
"postal_code": "text",
"country": "text",
"latitude": 1,
"longitude": 1,
"timezone": "text",
"facility_id": "text",
"phone": "text",
"hours": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"source_system": "text",
"canonical_id": "text",
"event_count": 0,
"last_event_at": "text"
}
],
"total": 1,
"has_more": false,
"next_offset": 1
}Frontend-ready appointment list with date, status, patient, practitioner, location, reason. Optionally scoped to a data source.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Search
Scope to data source
200Successful Response
falseValidation Error
GET /v1/{workspace_id}/fhir/views/appointments HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"appointments": [
{
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"status": "text",
"start": "text",
"end": "text",
"patient_name": "text",
"practitioner_name": "text",
"location_name": "text",
"reason": "text",
"cancel_reason": "text",
"appointment_type": "text",
"duration_minutes": 1,
"modality": "text",
"source_system": "text",
"canonical_id": "text",
"event_count": 0,
"last_event_at": "text"
}
],
"total": 1,
"has_more": false,
"next_offset": 1
}Frontend-ready provider availability slot list with start, end, status, schedule reference, and provider display name. Optionally scoped to a data source.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Search
Scope to data source
Slot status (e.g. 'free', 'busy')
Start date YYYY-MM-DD (filters slots on or after this date)
Number of days forward from date (default 7)
7Provider name (partial match, e.g. 'Woloski')
Specialty (partial match, e.g. 'Psychiatry')
Visit/service type name (partial match, e.g. 'Follow-up')
Facility ID
200Successful Response
falseValidation Error
GET /v1/{workspace_id}/fhir/views/slots HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"slots": [
{
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"status": "text",
"start": "text",
"end": "text",
"schedule_ref": "text",
"provider_name": "text",
"provider_id": "text",
"facility_id": "text",
"specialty": "text",
"visit_type_ids": "text",
"visit_type_names": "text",
"source_system": "text",
"canonical_id": "text",
"event_count": 0,
"last_event_at": "text"
}
],
"total": 1,
"has_more": false,
"next_offset": 1
}Frontend-ready organization list with name, phone, domain, industry, address. Optionally scoped to a data source.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Search by name
Scope to data source
200Successful Response
falseValidation Error
GET /v1/{workspace_id}/fhir/views/organizations HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"organizations": [
{
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"name": "text",
"phone": "text",
"domain": "text",
"industry": "text",
"address": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"source_system": "text",
"canonical_id": "text",
"event_count": 0,
"last_event_at": "text"
}
],
"total": 1,
"has_more": false,
"next_offset": 1
}Search patient entities by name, MRN, or phone.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Search by name, MRN, phone, or entity ID
Search by MRN
Search by phone
Sort field with +/- prefix (e.g. -last_event_at)
200Successful Response
falseValidation Error
GET /v1/{workspace_id}/fhir/patients HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"patients": [
{
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"name": "text",
"birth_date": "text",
"gender": "text",
"phone": "text",
"email": "text",
"mrn": "text",
"event_count": 0,
"last_event_at": "text"
}
],
"total": 1,
"has_more": false,
"next_offset": 1
}Get the full event timeline for a patient entity.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
500Successful Response
Validation Error
GET /v1/{workspace_id}/fhir/patients/{patient_id}/timeline HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"events": [
{
"ANY_ADDITIONAL_PROPERTY": "anything"
}
],
"total": 1
}Get the agent-maintained world model state for a patient.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Successful Response
Patient name
Primary phone number (E.164)
Primary email address
Date of birth (YYYY-MM-DD)
Gender
Medical record number
Validation Error
GET /v1/{workspace_id}/fhir/patients/{patient_id}/summary HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"entity_type": "text",
"display_name": "text",
"event_count": 1,
"last_event_at": "2026-01-01T00:00:00.000Z",
"name": "text",
"phone": "text",
"email": "text",
"birth_date": "text",
"gender": "text",
"mrn": "text"
}Search FHIR resources by type with standard search parameters.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
200General search text
Successful Response
Invalid resource type.
Validation Error
GET /v1/{workspace_id}/fhir/resources/{resource_type} HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"resource_type": "text",
"total": 1,
"entries": [
{
"ANY_ADDITIONAL_PROPERTY": "anything"
}
],
"next_url": "text"
}Create a new FHIR resource. Automatically creates patient entities.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Successful Response
Invalid resource type or payload.
Validation Error
POST /v1/{workspace_id}/fhir/resources/{resource_type} HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 103
{
"data": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"data_source_id": "123e4567-e89b-12d3-a456-426614174000"
}{
"resource_type": "text",
"resource_id": "text",
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"data": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Fetch the version history and changed-field provenance for a FHIR resource.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
100Successful Response
falseInvalid resource type.
Resource not found.
Validation Error
GET /v1/{workspace_id}/fhir/resources/{resource_type}/{resource_id}/history HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"resource_type": "text",
"resource_id": "text",
"entries": [
{
"event_id": "123e4567-e89b-12d3-a456-426614174000",
"event_type": "text",
"source": "text",
"source_system": "text",
"data_source_id": "123e4567-e89b-12d3-a456-426614174000",
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"confidence": 1,
"is_current": true,
"effective_at": "text",
"created_at": "text",
"fields_affected": [
"text"
],
"data": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}
],
"total": 1,
"has_more": false,
"next_offset": 1
}Fetch a single FHIR resource by type and ID.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Successful Response
Invalid resource type.
Resource not found.
Validation Error
GET /v1/{workspace_id}/fhir/resources/{resource_type}/{resource_id} HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"resource_type": "text",
"resource_id": "text",
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"data": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Update a FHIR resource. Creates a new event that supersedes the old one.
API key issued via POST /v1/{workspace_id}/api-keys. Pass the returned api_key value as a Bearer token.
Successful Response
Invalid resource type or payload.
Resource not found.
Validation Error
PUT /v1/{workspace_id}/fhir/resources/{resource_type}/{resource_id} HTTP/1.1
Host: platform.api-us.concurrence.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 103
{
"data": {
"ANY_ADDITIONAL_PROPERTY": "anything"
},
"data_source_id": "123e4567-e89b-12d3-a456-426614174000"
}{
"resource_type": "text",
"resource_id": "text",
"entity_id": "123e4567-e89b-12d3-a456-426614174000",
"data": {
"ANY_ADDITIONAL_PROPERTY": "anything"
}
}Last updated
Was this helpful?

