-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathconfig.json
521 lines (518 loc) · 30.8 KB
/
config.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
{
"appName": "Procure",
"credentials": {
"epic_sandbox_secure_r4": {"clientId": "e1c76c06-8aee-4ae2-8cfd-4b5cf8aa3e32" },
"smart_sandbox_secure": {"clientId": "fake_client_id"},
"cerner_sandbox_secure": {"clientId": "49ddec60-1dd6-49d6-b0d0-e31b95925b3a"},
"epic_r4": {"clientId": "must_override"}
},
"mimeTypeMappings": {
"application/pdf": "pdf",
"application/json": "json",
"application/xml": "xml",
"text/plain": "txt",
"text/html": "html",
"image/jpeg": "jpg",
"image/bpm": "bmp",
"video/mp4": "mp4"
},
"dateSortElements": {
"AllergyIntolerance": ["onset", "recordedDate"],
"CarePlan": ["modified"],
"CareTeam": ["modified"],
"Condition": ["onsetDateTime", "onsetPeriod", "abatementDateTime", "abatementPeriod"],
"DiagnosticReport": ["effectiveDateTime", "effectivePeriod"],
"DocumentReference": ["created"],
"Encounter": ["period"],
"Goal": ["startDate", "targetDate", "statusDate"],
"Immunization": ["date"],
"MedicationOrder": ["dateWritten", "dateEnded"],
"MedicationStatement": ["effectiveDateTime", "effectivePeriod", "dateAsserted"],
"Observation": ["effectiveDateTime", "effectivePeriod"],
"Patient": ["birthDate"], //move patient resource to the end of the list of sorted items
"Procedure": ["performedDateTime", "performedPeriod"]
},
"endpointLists": {
"epic_endpoints_r4": {
"path": "./config/epic_endpoints_r4.json",
"defaults": {
"queryProfile": "uscdi_epic",
"isOpen": false,
"credentialId": "epic_r4",
"scope": ["launch/patient", "patient/*.read"]
}
},
"sandbox_endpoints": {
"path": "./config/sandbox_endpoints.json",
"defaults": {
"queryProfile": "uscdi",
"scope": ["patient/*.read", "launch/patient"]
}
},
"blue_button_endpoints": {
"path": "./config/bluebutton_endpoints.json",
"defaults": {
"queryProfile": "blue_button_r4",
"scope": ["launch/patient", "patient/Patient.read", "patient/ExplanationOfBenefit.read", "patient/Coverage.read"]
}
}
},
"warnOnPageNavigate": false,
"redirectUri": null,
"queryProfiles": {
"blue_button_r4": {
"title": "Blue Button R4",
"fhirVersion": "R4",
"retryLimit": 2,
"queries": [{
"title": "Explanation of Benefit",
"path": "ExplanationOfBenefit?patient={patientId}"
},{
"title": "Patient",
"path": "Patient/{patientId}"
},{
"title": "Coverage",
"path": "Coverage?patient={patientId}"
}]
},
"uscdi": {
"title": "USCDI",
"fhirVersion": "R4",
"retryLimit": 2,
"queries": [{
"path": "metadata"
},{
"title": "AllergyIntolerance",
"path": "AllergyIntolerance?patient={patientId}"
},{
"title": "CarePlan",
"path": "CarePlan?patient={patientId}"
},{
"title": "CareTeam",
"path": "CareTeam?patient={patientId}"
},{
"title": "US Core Condition",
"path": "Condition?patient={patientId}"
},{
"title": "US Core DiagnosticReport",
"path": "DiagnosticReport?patient={patientId}"
},{
"title": "US Core DocumentReference",
"path": "DocumentReference??patient={patientId}",
"downloadAttachments": "content.attachment"
},{
"title": "US Core Encounter",
"path": "Encounter?patient={patientId}"
},{
"title": "US Core Goal",
"path": "Goal?patient={patientId}"
},{
"title": "US Core Immunization",
"path": "Immunization?patient={patientId}"
},{
"title": "US Core Implantable Device",
"path": "Device??patient={patientId}"
},{
"title": "US Core Observation",
"path": "Observation?patient={patientId}"
},{
"title": "US Core MedicationRequest",
"path": "MedicationRequest?patient={patientId}",
"containReferences": "medicationReference"
},{
"title": "US Core Procedure",
"path": "Procedure?patient={patientId}"
},{
"title": "US Core Patient",
"path": "Patient/{patientId}"
}]
},
"uscdi_epic": {
"title": "USCDI - Epic (Nov 2024)",
"fhirVersion": "R4",
"retryLimit": 2,
"queries": [{
"path": "metadata"
},{
"title": "Patient Demographics",
"path": "Patient/{patientId}"
},{
"title": "Allergies",
"path": "AllergyIntolerance?patient={patientId}",
"notes": [
"AllergyIntolerance.Search (R4) | https://fhir.epic.com/Specifications?api=947",
"Starting in the August 2021 version of Epic, the clinical-status parameter is no longer required, and if is not specified, both active and inactive/resolved allergies are returned",
"Incremental retrieval: post-filter of 'date' - The date the allergy was recorded in Epic"
]
},{
"title": "CarePlans (Encounter-Level and Longitudinal)",
"path": "CarePlan?category=38717003,734163000&patient={patientId}",
"notes": [
"CarePlan.Search (Encounter-Level) (R4) | https://fhir.epic.com/Specifications?api=1067 (category = 734163000)",
"CarePlan.Search (Longitudinal) (R4) | https://fhir.epic.com/Specifications?api=1065 (category = 734163000)",
"Care plan types not included in the USCDI API: Care Path, Dental, Inpatient Pathway, Inpatient, Oncology, Outpatient, Patient Education, Questionnaires Due, Episode",
"Blank category *will not* search all care plans",
"Category type 'assess-plan' is always included in search results",
"Incremental retrieval: post-filter of 'activity-date' (longitudinal only)"
]
},{
"title": "CareTeam (Longitudinal)",
"path": "CareTeam?patient={patientId}",
"notes": [
"CareTeam.Search (Longitudinal) (R4) | https://fhir.epic.com/Specifications?api=1069",
"Incremental retrieval: post-filter of 'date'"
]
},{
"title": "Conditions (Care Plan Problem, Encounter Dx, Health Concern, Problem List Item)",
"path": "Condition?status=active,resolved,inactive&patient={patientId}",
"notes": [
"Condition.Search (Care Plan Problem) (R4) | https://fhir.epic.com/Specifications?api=10048 (category = care-plan-problem)",
"Condition.Search (Encounter Diagnosis) (R4) | https://fhir.epic.com/Specifications?api=952 (category = encounter-diagnosis)",
"Condition.Search (Health Concern) (R4) | https://fhir.epic.com/Specifications?api=985 (category = health-concern)",
"Condition.Search (Problems) (R4) | https://fhir.epic.com/Specifications?api=953 (category = problem-list-item)",
"Condition types not included in USCDI API: Dental Finding, Genomics, Infection, Medical History, Reason for Visit",
"Blank category *should* return all available categories",
"Status values of 'active', 'resolved', and 'inactive' must be passed or only active conditions will be returned",
"Incremental retrieval: post-filters of 'recorded-date', 'onset-date', 'abatement-date'",
"CAUTION: Including the Condition.Search (Encounter Diagnosis) scope will limit app use to sites on Epic August 2024 or later"
]
},{
"title": "Coverage",
"path": "Coverage?patient={patientId}",
"notes": [
"Coverage.Search (R4) | https://fhir.epic.com/Specifications?api=1078",
"The patient-level coverage list represents all possible insurances that could be billed for services. A patient might have a long list of possible coverages that are applicable only for specific services. Examples include third party liability, workers' comp, black lung insurance, Medicaid for ESRD, Medicare, commercial, and others. For any specific visit, an account record will indicate which coverages will be used for that visit.",
"CAUTION: Including the Coverage.Search scope will limit app use to sites on Epic August 2024 or later"
]
},{
"title": "Devices (Implants)",
"path": "Device?patient={patientId}",
"notes": [
"Device.Search (Implants) (R4) | https://fhir.epic.com/Specifications?api=1013"
]
},{
"title": "Diagnostic Reports",
"path": "DiagnosticReport?patient={patientId}",
"notes": [
"DiagnosticReport.Search (Results) (R4) | https://fhir.epic.com/Specifications?api=989",
"Starting in February 2024, DiagnosticReport can return EKG data using the Midmark third-party integration. If the EKG order collected heart rate and blood pressure data as well, this data is returned as Observations contained within the report",
"Starting in May 2024, DiagnosticReport can return audiology exam finding data. Data within the audiology exam is returned as observations contained within the response",
"Incremental retrieval: filter of 'date' - clinically relevant time/time period for report. Matches to the effectiveDateTime response element"
]
},{
"title": "Documents (Clinical Notes and Lab Reports)",
"path": "DocumentReference?patient={patientId}",
"downloadAttachments": "content.attachment",
"notes": [
"DocumentReference.Search (Clinical Notes) (R4)|https://fhir.epic.com/Specifications?api=1048",
"DocumentReference.Search (Labs) (R4)|https://fhir.epic.com/Specifications?api=10133",
"Included types are clinical notes are Discharge Documentation (18842-5), Consultation (11488-4), History & Physical (34117-2), Progress Note (11506-3), Procedure Note (28570-0), Emergency Department Note (34111-5), and Nurse Note (34746-8)",
"Starting in the May 2022 version of Epic or the February 2022 version of Epic by special update: Discharge Instructions (74213-0) and Risk assessment and screening note (75492-9)",
"Included types for labs are 18748-4 (Diagnostic imaging study), 11526-1 (Pathology study), 11502-2 (Laboratory report), 34109-9 (Note)",
"Search category is documented as always being 'clinical-note', even for labs which according to US Core should be 'LAB'. We want both, so omitting for safety in case they fix this",
"Incremental retrieval: filter of 'date' - when the document reference was created for clinical notes. For labs 'if date is provided, this service will filter orders for which narratives/impressions/addenda are returned'"
]
},{
"title": "Encounters",
"path": "Encounter?patient={patientId}",
"notes": [
"Encounter.Search (Patient Chart) (R4) | https://fhir.epic.com/Specifications?api=909",
"Incremental retrieval: filter of 'date' - 'a date range that the encounter takes place'"
]
},{
"title": "Goals (Care Plan and Patient)",
"path": "Goal?patient={patientId}",
"notes": [
"Goal.Search (Care Plan) (R4) | https://fhir.epic.com/Specifications?api=10053",
"Goal.Search (Patient) (R4) | https://fhir.epic.com/Specifications?api=960",
"Incremental retrieval: post-filters of start-date (patient and care plan goals) and target-date (care plan goals only)"
]
},{
"title": "Immunizations",
"path": "Immunization?patient={patientId}",
"notes": [
"Immunization.Search (R4) | https://fhir.epic.com/Specifications?api=1071",
"Returns statuses of completed, entered-in-error, not-done. Incomplete Immunizations are not supported. If no status is specified, all statuses are returned.",
"Incremental retrieval: filter of 'date' - vaccination administration date"
]
},{
"title": "Medication Dispenses",
"path": "MedicationDispense?patient={patientId}",
"containReferences": "medicationReference",
"notes": [
"MedicationDispense.Search (Fill Status) (R4) | https://fhir.epic.com/Specifications?api=10646",
"CAUTION: Including the MedicationDispense.Search scope will limit app use to sites on Epic August 2024 or later"
]
},{
"title": "Medication Requests (Order or Patient Reported)",
"path": "MedicationRequest?patient={patientId}",
"containReferences": "medicationReference",
"notes": [
"MedicationRequest.Search (Signed Medication Order) (R4) | https://fhir.epic.com/Specifications?api=997",
"Incremental retrieval: filter of 'date' - The medication administration date. This parameter corresponds to the dosageInstruction.timing.repeat.boundsPeriod element. Medication orders that do not have start and end dates within the search parameter dates are filtered. If the environment supports multiple time zones, the search dates are adjusted one day in both directions, so more medications might be returned than expected. Use caution when filtering a medication list by date as it is possible to filter out important active medications. Starting in the November 2022 version of Epic, this parameter is respected. In May 2022 and earlier versions of Epic, this parameter is allowed but is ignored and no date filtering is applied."
]
},{
"title": "Observations (Laboratory Result)",
"path": "Observation?category=http://terminology.hl7.org/CodeSystem/observation-category|laboratory&patient={patientId}",
"notes": [
"Observation.Search (Labs) (R4) | https://fhir.epic.com/Specifications?api=999"
]
},{
"title": "Observations (Vital Sign)",
"path": "Observation?category=vital-signs&patient={patientId}",
"notes": [
"Observation.Search (Vitals) (R4) | https://fhir.epic.com/Specifications?api=973",
"Incremental retrieval: filter of 'date' - The date range for when the observation was taken. For growth chart data (Epic version August 2021 and later), only the most recent observation within the timeframe is returned."
]
},{
"title": "Observations (Assessment)",
"path": "Observation?category=survey&patient={patientId}",
"notes": [
"Observation.Search (Assessments) (R4) | https://fhir.epic.com/Specifications?api=11052",
"Observation.Search (SDOH Assessments) (R4) | https://fhir.epic.com/Specifications?api=11104",
"Observation types not included in USCDI API: Activities of Daily Living, Core Characteristics, Family Situation, Genomics, LDA-W, Labor and Delivery, Newborn Delivery, Obstetrics-Gynecology, Periodontal",
"Category or code parameter is required. Valid categories are disability-status, cognitive-status, functional-status and sdoh or survey for all.",
"Incremental retrieval: filter of 'date' - The date or date range when the observation was taken",
"CAUTION: Including the Observation.Search (Assessments) or Observation.Search (SDOH Assessments) scopes will limit app use to sites on Epic August 2024 or later"
]
},{
"title": "Observation (SmartData Elements)",
"path": "Observation?category=smartdata&patient={patientId}",
"notes": [
"Observation.Search (SmartData Elements) (R4) | https://fhir.epic.com/Specifications?api=10121",
"CAUTION: Including the Observation.Search (SmartData Elements) scope will limit app use to sites on Epic August 2024 or later"
]
},{
"title": "Observations (Social History)",
"path": "Observation?category=social-history&patient={patientId}",
"notes": [
"Observation.Search (Social History) (R4) | https://fhir.epic.com/Specifications?api=972",
"Includes: Smoking history: LOINC code 72166-2 or SNOMED code 365980008, Passive exposure: SNOMED code 43381005, Alcohol use history: LOINC code 11331-6 or SNOMED code 228273003, Drug use history: LOINC code 11343-1 or SNOMED code 228366006, Living situation: SNOMED code 365508006, Education: LOINC code LG41797-1, Employment history: LOINC code 11341-5, Social documentation: LOINC code 29762-2, Pregnancy status: LOINC code 82810-3, Uterus findings: LOINC code 32486-3, Lactation Status: LOINC code 63895-7, Menstrual status: LOINC code 3146-8, Last menstrual period start-date: LOINC code 8665-2, Estimated Delivery Date: LOINC code 11778-8, Pregnancy Intention: LOINC code 86645-9, Breastfeeding status: LOINC code 63895-7, Sexual orientation: LOINC code 76690-7",
"Incremental retrieval: filter of 'date' - Date when the observation occurred and 'issued' - The date range the observation is obtained."
]
},{
"title": "Observations (Study Finding)",
"path": "Observation?category=imaging,exam&patient={patientId}",
"notes": [
"Observation.Search (Study Finding) (R4) | https://fhir.epic.com/Specifications?api=10297",
"Result data from procedures, such as fetal and maternal measurement data from an obstetric ultrasound",
"Category: 'imaging' to search for all imaging observations. Use 'exam' to search for all audiology studies",
"Incremental retrieval: filter of 'date' - Specify a date or date range that an Observation was resulted or recorded",
"CAUTION: Including the Observation.Search (Study Finding) scope will limit app use to sites on Epic August 2024 or later"
]
},{
"title": "Procedures (Orders, SDOH Intervention)",
"path": "Procedure?patient={patientId}",
"notes": [
"Procedure.Search (Orders) (R4) | https://fhir.epic.com/Specifications?api=976 (category = 103693007)",
"Procedure.Search (SDOH Intervention) (R4)|https://fhir.epic.com/Specifications?api=11038 (category = 410606002)",
"Procedure types not included in USCDI API: Nursing Intervention, Restricting Intervention, Surgical History",
"Allows a client to search for current and historic social determinants of health (SDOH) interventions completed in Epic from a user sending a request to a community-based organization to address an at-risk domain for a patient.",
"Procedure.Search (Surgeries) (R4)|https://fhir.epic.com/Specifications?api=10042 (category = 387713003)",
"Incremental retrieval: filter of 'date' - Date or period that the procedure was performed, using the FHIR date parameter format (orders, surgeries), The date the Procedure was completed (SDOH intervention)",
"CAUTION: Including the Procedure.Search (SDOH Intervention) scope will limit app use to sites on Epic August 2024 or later"
]
},{
"title": "Service Requests (Non-Med Orders, Community Resources)",
"path": "ServiceRequest?patient={patientId}",
"notes": [
"ServiceRequest.Search (Community Resource) (R4)|https://fhir.epic.com/Specifications?api=10092",
"Category of http://snomed.info/sct|306206005 for all requests, category of http://snomed.info/sct|410606002 for requests that *do not* address Social Driver of Health domains, category of http://hl7.org/fhir/us/core/CodeSystem/us-core-category|sdoh for request that *do* address Social Drivers of Health domains",
"ServiceRequest.Search (Order Procedure) (R4)|https://fhir.epic.com/Specifications?api=1054",
"This resource returns non-medication orders for a patient, such as procedures, cultures, ECGs, EKGs, imaging orders, lab orders, micro orders, or radiology orders.",
"ServiceRequest types not included in USCDI API: Dental Procedure, Order Template, Pregnancy Plans",
"This service returns all statuses if this element is not specified",
"CAUTION: Including a ServiceRequest scope will limit app use to sites on Epic August 2024 or later"
]
}]
},
"uscdi_cerner": {
"title": "USCDI - Cerner Millennium (Nov 2024)",
"fhirVersion": "R4",
"retryLimit": 2,
"queries": [{
"path": "metadata"
},{
"title": "Patient Demographics",
"path": "Patient/{patientId}"
},{
"title": "Allergies",
"path": "AllergyIntolerance?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-allergyintolerance-get.html",
"Incremental retrieval: _lastUpdated - This parameter may be provided up to two times, and must use the eq, ge, gt, le, or lt prefixes. When a value is provided without a prefix, an implied eq prefix is used. When provided twice, the lower value must have a ge or gt prefix and the higher value must have an le or lt prefix."
]
},{
"title": "Appointments",
"path": "Appointment?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-appointment-get.html",
"Incremental retrieval: Search by date returns appointments with a status other than proposed that start within the date range provided. Search by -date-or-req-period returns the same appointments as the date parameter, but also returns appointments with a status of proposed that are requested to start or end between the dates provided.",
"When searching with a patient authorization type, sensitive appointments will not be returned."
]
},{
"title": "CarePlans (Encounter-Level and Longitudinal)",
"path": "CarePlan?category=assess-plan&patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-careplan-get.html",
"Incremental retrieval: Search by date - The time period that the plan covers. When provided, must use both ge and le prefixes in the same search. The lower value must have the ge prefix and the higher value must have the le prefix. The date precision must be consistent. May be combined with the patient and category parameters."
]
},{
"title": "CareTeams (Longitudinal and Encounter)",
"path": "CareTeam?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-careteam-get.html"
]
},{
"title": "Conditions (Care Plan Problem, Encounter Dx, Health Concern, Problem List Item)",
"path": "Condition?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-condition-get.html",
"Incremental retrieval: _lastUpdated is supported. This parameter may be provided up to two times, and must use the eq, ge, gt, le, or lt prefixes. When a value is provided without a prefix, an implied eq prefix is used. When provided twice, the lower value must have a ge or gt prefix and the higher value must have an le or lt prefix."
]
},{
"title": "Coverage",
"path": "Coverage?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-coverage-get.html"
]
},{
"title": "Devices (Implants)",
"path": "Device?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-device-get.html"
]
},{
"title": "Diagnostic Reports",
"path": "DiagnosticReport?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-diagnosticreport-get.html",
"Incremental retrieval: _lastUpdated is supported."
]
},{
"title": "Documents (Clinical Notes and Lab Reports)",
"path": "DocumentReference?patient={patientId}",
"skip": true,
"downloadAttachments": "content.attachment",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-documentreference-get.html",
"The search operation is supported for clinical-note, cardiology, radiology, microbiology, and pathology charted documents and clinical-note staged documents.",
"Incremental retrieval: _lastUpdated is supported. The date range in which the document was last updated. This parameter only qualifies clinically significant updates. For example, changes to the value or code, and other significant fields. Minor updates, such as nonclinically relevant note updates, do not qualify."
]
},{
"title": "Encounters",
"path": "Encounter?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-encounter-get.html",
"Incremental retrieval: _lastUpdated is supported. This parameter may be provided up to two times and must use the eq, ge, gt, le, or lt prefixes. When a value is provided without a prefix, an implied eq prefix is used. When provided twice, the lower value must have a ge or gt prefix and the higher value must have a le or lt prefix."
]
},{
"title": "Goals",
"path": "Goal?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-goal-get.html",
"Incremental retrieval: target-date - A date or date range from which to find goals. The target-date parameter may be provided once with a prefix to imply a date range or without a prefix to search for goals at a specific date. Alternately, it may be provided twice with le, lt, ge, or gt prefixes to search for goals within a specific range. The date and prefix pairs must create a closed range."
]
},{
"title": "Immunizations",
"path": "Immunization?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-immunization-get.html",
"Incremental retrieval: _lastUpdated is supported. May be provided with only a single reference, and must use the gt or ge prefix. The time component is optional."
]
},{
"title": "Medication Administrations",
"path": "MedicationAdministration?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-medicationadministration-get.html",
"Incremental retrieval: effective-time. A date range for when the administration happened. For a single effective-time occurrence: Must be provided with a ge, gt, le, or lt prefix to imply the date range for an administrations search. The time component is required. For two effective-time occurences: Must be provided once with the le or lt prefix, and once with the ge or gt prefix to search for administrations within the given upper and lower timestamps, respectively. The time component is required for both parameters."
]
},{
"title": "Medication Dispenses",
"path": "MedicationDispense?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-medicationdispense-get.html"
]
},{
"title": "Medication Requests (Order or Patient Reported)",
"path": "MedicationRequest?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-medicationrequest-get.html",
"Incremental retrieval: _lastUpdated is supported. The date and time range within which the most recent clinically relevant update was made to the medication. For a single _lastUpdated occurence: Must be provided with a le or ge prefix to imply the date range for the medications search. For two _lastUpdated occurences: Must be provided with the le and ge prefixes to search for medications within the given upper and lower timestamps, respectively."
]
},{
"title": "Nutrition Orders",
"path": "NutritionOrder?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-nutritionorder-get.html",
"Incremental retrieval: _lastUpdated is supported. An explicit or implied date and time range during which the most recent clinically relevant update was made to the nutrition order. Must include a time and must be prefixed by ge or le. May be provided once with a prefix of ge or le representing the earliest date or latest date (for example, date=ge2015-01-01 or date=le2016-01-01). May be provided twice with the prefixes of ge and le to indicate a specific range (for example, date=ge2015-01-01&date=le2016-01-01)."
]
},{
"title": "Observations",
"path": "Observation?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-observation-get.html",
"Incremental retrieval: _lastUpdated is supported. The date range in which the observation was last updated. May be provided up to two times, and must use the eq, ge, gt, le, or lt prefixes. When a value is provided without a prefix, an implied eq prefix is used. When provided twice, the lower value must have a ge or gt prefix and the higher value must have an le or lt prefix. May not be provided with date. Only clinically significant updates are qualified, such as changes to the value or code, and other significant fields. Minor updates, such as non-clinically relevant note updates, do not qualify."
]
},{
"title": "Procedures (Orders, SDOH Intervention)",
"path": "Procedure?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-procedure-get.html",
"Incremental retrieval: _lastUpdated is supported. The date range in which the procedures was last updated. This parameter may be provided up to two times, and must use the eq, ge, gt, le, or lt prefixes. When a value is provided without a prefix, an implied eq prefix is used. When provided twice, the lower value must have a ge or gt prefix and the higher value must have an le or lt prefix. The _lastUpdated parameter may not be provided at the same time as the date parameter."
]
},{
"title": "QuestionnaireResponse",
"path": "QuestionnaireResponse?patient={patientId}",
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-questionnaireresponse-get.html"
]
},{
"title": "Service Requests",
"path": "ServiceRequest?patient={patientId}",
"skip": true,
"notes": [
"https://docs.oracle.com/en/industries/health/millennium-platform-apis/mfrap/op-servicerequest-get.html",
"Incremental retrieval: _lastUpdated is supported.An explicit or implied date and time range within which the most recent clinically relevant update was made to the service request. Must include a time, and must be prefixed by ge or le. May be provided: Once with a ge or le prefix representing the earliest date or latest date. Twice with the ge and le prefixes to indicate a specific range."
]
}]
}
},
"spreadsheetTemplates": {
"vitalSigns": {
"name": "Vital Signs",
"sortBy": [{"name": "EffectiveDateTime", "dir": "desc"}],
"template": [
{"path": "resourceType", "test": "validateValue", "target": "Observation"},
{"path": "category", "test": "validateCodeableConcept", "target": "vital-signs", "id": "category"},
{"name": "Source", "transform": "getHelperData", "helperDataField": "source"},
{"name": "ResourceId", "path": "id"},
{"name": "Status", "path": "status"},
{"name": "EffectiveDateTime", "path": "effectiveDateTime", "transform": "parseDateForExcel"},
{"name": "ObservationType", "path": ["code.text", "code.coding[0].display"]},
{"name": "ObservationCodes", "path": "code.coding", "transform": "stringifyCodings", "test": "validateExists"},
{"path": ["component", "*"], "id": "component", "children": [
{"name": "ValueType", "path": ["code.text", "code.coding[0].display"]},
{"name": "ValueCodes", "path": "code.coding", "transform": "stringifyCodings"},
{"name": "Value","path": "valueQuantity.value", "test": "validateExists"},
{"name": "ValueUnit", "path": ["valueQuantity.unit", "valueQuantity.code"]}
]}
]
},
"laboratory": {
"name": "Quantitative Lab Results",
"extends": ["vitalSigns"],
"template": [
{"id":"category", "target":"laboratory"},
{"id": "component", "children": [
{"name": "ReferenceLowValue", "path": "referenceRange[0].low.value"},
{"name": "ReferenceLowUnit", "path": "referenceRange[0].low.unit"},
{"name": "ReferenceHighValue", "path": "referenceRange[0].high.value"},
{"name": "ReferenceHighUnit", "path": "referenceRange[0].high.unit"},
{"name": "Interpretation", "path": ["interpretation.text", "interpretation.coding[0].display"]},
{"name": "InterpretationCode", "path": "interpretation.coding", "transform": "stringifyCodings"}
]}
]
}
}
}