By EHR

Veradigm bulk FHIR export for research.

Clinical Extract connects to Veradigm EHR as a read-only System app registered with a JWKS URL and exports the study cohort’s Group through the certified FHIR R4 API at your FhirURL. Your Reporting segment defines the cohort, and the approved variables come back as study.csv with a data dictionary.

1 Works with Veradigm

Veradigm EHR support.

Veradigm EHR’s certified API (ONC §170.315(g)(10)) exports a Group of patients through HL7 FHIR Bulk Data Access, authorized with SMART Backend Services. Clinical Extract makes the token request at your TokenURL, the Group kickoff at your FhirURL, the status poll and the file downloads, read-only, in your environment.

Veradigm data extraction for a study starts from a Reporting module segment you define, or from a roster you match. That cohort becomes the Group, and the export reads only the resource types the protocol names.

The study cohort as NDJSON, flattened to CSV
Patient, Encounter, Condition, Observation, MedicationRequest and Procedure files land in your study folder. Clinical Extract flattens the approved variables into study.csv and gives each column a data-dictionary.json entry.
Coded columns
Diagnoses, results, medications and procedures come out as ICD-10-CM, LOINC, RxNorm and SNOMED CT codes, each column traced to its FHIR element.
The oncology lens
ER, PR, HER2, PD-L1, EGFR, KRAS, BRAF, ALK, MSI and TNM clinical and pathologic arrive as named columns.
Roster pull and the cohort builder
Match a patient list against Veradigm EHR with graded results, or build the cohort from coded criteria and read the feasibility count before the export.

2 Connecting

Registering the System app and licensing it for your organization.

Setup for Veradigm EHR runs through two portals and the Reporting module.

  1. Register. On the FHIR App page of the Veradigm Connect developer portal, Clinical Extract is an app of type System with a JWKS URL (its public key), one system/<Resource>.read scope per exported type plus system/Group.read, and a Purpose of Use. Veradigm issues the Client ID, and production access is requested.
  2. Activate. Your organization licenses and activates the app in the License Management Portal, gives Clinical Extract your FhirURL and TokenURL from the Endpoint Directory, and builds the study Group from a segment in the Reporting module.
  3. Export. Clinical Extract signs a JWT with the private key that stays in your environment, gets a token with read scopes only at your TokenURL, and runs the Group export at your FhirURL.

Our Veradigm EHR and Allscripts integration work goes beyond research exports.

Connecting Clinical Extract to VeradigmThree numbered steps from left to right. Step 1, register, at Veradigm Connect (FHIR App page), outside your environment: App Type: System; JWKS URL: https://{your-host}/jwks.json; Scopes: system/Patient.read, system/Group.read, system/Encounter.read, system/Condition.read, system/Observation.read, system/MedicationRequest.read, system/Procedure.read; Purpose of Use: selected for the app; Issued: Client ID, then Request Production Access. An arrow carries the Client ID to step 2. Step 2, activate, at Your Veradigm EHR (License Management Portal): License: your organization licenses and activates the app; Provider endpoint: your FhirURL, from the Endpoint Directory; Group: built from a segment in the Reporting module. An arrow carries the FhirURL and Group ID to step 3. Step 3, export, from Clinical Extract in your environment: request POST {TokenURL} (grant_type=client_credentials, client_assertion: signed JWT, scope=system/Patient.read …); request GET {FhirURL}/Group/{id}/$export (?_type=Patient,Encounter,Condition,Observation,MedicationRequest,Procedure, Prefer: respond-async), highlighted; response 202 Accepted (Content-Location: {status-url}); request GET {status-url} (202 Accepted while the export runs, with Retry-After); response 200 OK, JSON manifest (transactionTime, request,, requiresAccessToken, error[],, output[{type, url, count}]); request GET {output-url} (NDJSON, one resource per line); result study.csv, data-dictionary.json (flattened, approved variables only).1REGISTERVeradigm ConnectFHIR App pageAPP TYPESystemJWKS URLhttps://{your-host}/jwks.jsonSCOPESsystem/Patient.readsystem/Group.readsystem/Encounter.readsystem/Condition.readsystem/Observation.readsystem/MedicationRequest.readsystem/Procedure.readPURPOSE OF USEselected for the appISSUEDClient IDthen Request Production Access2ACTIVATEYour Veradigm EHRLicense Management PortalLICENSEyour organization licenses andactivates the appPROVIDER ENDPOINTyour FhirURL, from the EndpointDirectoryGROUPbuilt from a segment in theReporting module3EXPORTClinical Extractin your environmentrequestresponsePOST {TokenURL}grant_type=client_credentialsclient_assertion: signed JWTscope=system/Patient.read …GET {FhirURL}/Group/{id}/$export?_type=Patient,Encounter,Condition,Observation,MedicationRequest,ProcedurePrefer: respond-async202 AcceptedContent-Location: {status-url}GET {status-url}202 Accepted while the exportruns, with Retry-After200 OK, JSON manifesttransactionTime, request,requiresAccessToken, error[],output[{type, url, count}]GET {output-url}NDJSON, one resource per linestudy.csv, data-dictionary.jsonflattened, approved variables onlyClient IDFhirURLGroup ID
Connecting Clinical Extract to VeradigmThree numbered steps from left to right. Step 1, register, at Veradigm Connect (FHIR App page), outside your environment: App Type: System; JWKS URL: https://{your-host}/jwks.json; Scopes: system/Patient.read, system/Group.read, system/Encounter.read, system/Condition.read, system/Observation.read, system/MedicationRequest.read, system/Procedure.read; Purpose of Use: selected for the app; Issued: Client ID, then Request Production Access. An arrow carries the Client ID to step 2. Step 2, activate, at Your Veradigm EHR (License Management Portal): License: your organization licenses and activates the app; Provider endpoint: your FhirURL, from the Endpoint Directory; Group: built from a segment in the Reporting module. An arrow carries the FhirURL and Group ID to step 3. Step 3, export, from Clinical Extract in your environment: request POST {TokenURL} (grant_type=client_credentials, client_assertion: signed JWT, scope=system/Patient.read …); request GET {FhirURL}/Group/{id}/$export (?_type=Patient,Encounter,Condition,Observation,MedicationRequest,Procedure, Prefer: respond-async), highlighted; response 202 Accepted (Content-Location: {status-url}); request GET {status-url} (202 Accepted while the export runs, with Retry-After); response 200 OK, JSON manifest (transactionTime, request,, requiresAccessToken, error[],, output[{type, url, count}]); request GET {output-url} (NDJSON, one resource per line); result study.csv, data-dictionary.json (flattened, approved variables only).1REGISTERVeradigm ConnectFHIR App pageAPP TYPESystemJWKS URLhttps://{your-host}/jwks.jsonSCOPESsystem/Patient.readsystem/Group.readsystem/Encounter.readsystem/Condition.readsystem/Observation.readsystem/MedicationRequest.readsystem/Procedure.readPURPOSE OF USEselected for the appISSUEDClient IDthen Request Production AccessClient ID2ACTIVATEYour Veradigm EHRLicense Management PortalLICENSEyour organization licenses and activatesthe appPROVIDER ENDPOINTyour FhirURL, from the EndpointDirectoryGROUPbuilt from a segment in the ReportingmoduleFhirURLGroup ID3EXPORTClinical Extractin your environmentrequestresponsePOST {TokenURL}grant_type=client_credentialsclient_assertion: signed JWTscope=system/Patient.read …GET {FhirURL}/Group/{id}/$export?_type=Patient,Encounter,Condition,Observation,MedicationRequest,ProcedurePrefer: respond-async202 AcceptedContent-Location: {status-url}GET {status-url}202 Accepted while the export runs, withRetry-After200 OK, JSON manifesttransactionTime, request,requiresAccessToken, error[],output[{type, url, count}]GET {output-url}NDJSON, one resource per linestudy.csv, data-dictionary.jsonflattened, approved variables only
Figure 1. Connecting Clinical Extract to Veradigm. Clinical Extract is registered once on the FHIR App page of the Veradigm Connect portal as a System app with a JWKS URL; your organization licenses and activates it in the License Management Portal and builds the study Group from a Reporting module segment; Clinical Extract then runs the Group export on Veradigm EHR’s FHIR API, in your environment. Resource lists and URLs are abridged.

3 Export time

Export time on Veradigm EHR.

The Reporting segment keeps the Group to the study cohort, and the export of its records finishes in hours. Clinical Extract polls the status URL until the manifest arrives, fetches each file it lists with the bearer token, and writes study.csv and data-dictionary.json.

Every header of the kickoff, status and manifest exchange is in our guide to bulk FHIR export.

4 Facts

Veradigm EHR connection facts.

Table 1. Endpoint, registration, authentication, export type and output on Veradigm. Checked September 2026.
Endpoint Your FhirURL from the Endpoint Directory (Veradigm EHR’s certified FHIR R4 API), with its TokenURL
Registration The FHIR App page of the Veradigm Connect developer portal: App Type System, Clinical Extract’s JWKS URL, one system/<Resource>.read scope per exported type plus system/Group.read, a Purpose of Use; a Client ID, then Request Production Access
Activation Your organization licenses and activates the app in the License Management Portal and builds the study Group from a segment in the Reporting module
Authentication SMART Backend Services: a JWT signed with Clinical Extract’s private key, exchanged at your TokenURL for an access token with one system/<Resource>.read scope per exported type plus system/Group.read
Export type Group export: GET {FhirURL}/Group/{group-id}/$export with _type; 202 Accepted with a Content-Location status URL
Status and files 202 with Retry-After while the export runs; 200 with the JSON manifest; NDJSON files fetched with the bearer token, one resource per line
Output study.csv (UTF-8, one row per cohort patient, one column per approved variable) with data-dictionary.json (description, fhirSource and example per column); the NDJSON files and the manifest kept beside them in your study folder

The table scrolls sideways.

Sources: Veradigm developer documentation, HL7 Bulk Data Access, SMART Backend Services.

5 Specimens

What the exchange and the output look like.

Every value is synthetic. The cohort is a 212-patient breast cancer study with 24 approved variables; the manifest counts and the row shown come from it.

Listing 1. The export kickoff: one request for the study cohort's Group and the resource types the protocol names, answered at once with the status URL.
GET {FhirURL}/Group/{group-id}/$export
    ?_type=Patient,Encounter,Condition,Observation,MedicationRequest,Procedure
Accept: application/fhir+json
Prefer: respond-async
Authorization: Bearer {access token}

202 Accepted
Content-Location: {status-url}
Listing 2. The completed status response: the manifest lists one NDJSON file per requested type with its line count, and says the files need the bearer token.
{
  "transactionTime": "2026-09-28T14:02:11Z",
  "request": "{FhirURL}/Group/{group-id}/$export?_type=Patient,Encounter,Condition,Observation,MedicationRequest,Procedure",
  "requiresAccessToken": true,
  "output": [
    { "type": "Patient", "url": "{file-url-1}", "count": 212 },
    { "type": "Encounter", "url": "{file-url-2}", "count": 3120 },
    { "type": "Condition", "url": "{file-url-3}", "count": 1684 },
    { "type": "Observation", "url": "{file-url-4}", "count": 48310 },
    { "type": "MedicationRequest", "url": "{file-url-5}", "count": 3905 },
    { "type": "Procedure", "url": "{file-url-6}", "count": 912 }
  ],
  "error": []
}
Listing 3. One line of Observation.ndjson: a complete FHIR resource per line, here the estrogen receptor status of patient eKx3p9Qa (LOINC 16112-5; SNOMED CT 10828004, Positive).
{"resourceType":"Observation","id":"eObs-3f9a","status":"final","category":[{"coding":[{"system":"http://terminology.hl7.org/CodeSystem/observation-category","code":"laboratory"}]}],"code":{"coding":[{"system":"http://loinc.org","code":"16112-5","display":"Estrogen receptor [Interpretation] in Tissue"}]},"subject":{"reference":"Patient/eKx3p9Qa"},"effectiveDateTime":"2024-03-20","valueCodeableConcept":{"coding":[{"system":"http://snomed.info/sct","code":"10828004","display":"Positive"}]}}
Listing 4. study.csv, the header row and row 1 of 212: one row per patient in the cohort, one column per approved variable (10 of 24 columns shown). Values are synthetic.
patient_ref,birth_year,gender,dx_code,dx_date,stage_group,er_status,pr_status,her2_status,first_chemo
eKx3p9Qa,1961,female,C50.412,2024-03-14,IIA,Positive,Positive,Negative,paclitaxel
Listing 5. The er_status entry in data-dictionary.json: the description with its code system, the FHIR element the value came from, and an example value.
{
  "er_status": {
    "description": "Estrogen receptor status (LOINC 16112-5)",
    "fhirSource": "Observation.valueCodeableConcept",
    "example": "Positive"
  }
}

6 Questions

Questions about Veradigm EHR

Does Veradigm support bulk FHIR export?

Veradigm EHR is certified to ONC §170.315(g)(10), and its FHIR R4 API exposes the Group export with backend-services authorization. Clinical Extract runs it as a System app your organization licenses and activates.

Where does the study Group come from?

From a segment in the Reporting module: your organization defines the segment, and Clinical Extract runs the export against the Group it becomes. The cohort builder gives you the criteria and the count first.

What are FhirURL and TokenURL?

Veradigm’s names for the two addresses Clinical Extract needs: your provider FHIR endpoint from the Endpoint Directory, and the token endpoint that goes with it.

What does the study team receive?

study.csv for the cohort, one column per approved variable, and data-dictionary.json, which names each column’s FHIR source.

Next

See Clinical Extract run on one of your studies.

Tell us which EHR you run and what the study or registry needs. We reply within one business day to set a meeting time.

Request a demo