openapi: 3.1.0 info: title: Meditech Expanse FHIR R4 Allergy Patient API description: Meditech Expanse FHIR API enables standards-based interoperability for sharing patient data across healthcare systems. Supports TEFCA-aligned data exchange through the Traverse Exchange national network, connecting over 700 facilities across 41 US states. Built on HL7 FHIR R4 standards. version: 4.0.0 contact: name: Meditech Support url: https://ehr.meditech.com/contact license: name: Proprietary url: https://ehr.meditech.com/privacy-policy servers: - url: https://{facility}.meditech.com/fhir/r4 variables: facility: default: yourhospital description: Your Meditech facility subdomain security: - SMART_OAuth2: - patient/*.read - user/*.read - launch tags: - name: Patient description: US Core Patient resources paths: /Patient: get: operationId: searchPatients summary: Search patients description: Search for patient records using FHIR search parameters including name, birthdate, identifier, and gender. Implements US Core Patient profile. tags: - Patient parameters: - name: identifier in: query schema: type: string description: MRN or other identifier (e.g., identifier=MR|12345) - name: family in: query schema: type: string - name: given in: query schema: type: string - name: birthdate in: query schema: type: string description: FHIR date parameter (e.g., birthdate=1980-01-01) - name: gender in: query schema: type: string enum: - male - female - other - unknown - name: _count in: query schema: type: integer default: 20 maximum: 200 - name: _format in: query schema: type: string enum: - json - xml default: json responses: '200': description: Bundle of matching Patient resources content: application/fhir+json: schema: $ref: '#/components/schemas/Bundle' '401': $ref: '#/components/responses/Unauthorized' /Patient/{id}: get: operationId: getPatient summary: Get patient by ID description: Retrieve a specific patient resource by FHIR logical ID. tags: - Patient parameters: - name: id in: path required: true schema: type: string responses: '200': description: Patient resource content: application/fhir+json: schema: $ref: '#/components/schemas/Patient' '404': $ref: '#/components/responses/NotFound' /Patient/{id}/$everything: get: operationId: getPatientEverything summary: Get all patient data (Patient $everything) description: Returns all resources related to a patient in a single Bundle. Implements the FHIR $everything operation for bulk patient data access. tags: - Patient parameters: - name: id in: path required: true schema: type: string - name: start in: query schema: type: string format: date - name: end in: query schema: type: string format: date responses: '200': description: Bundle containing all patient-linked resources content: application/fhir+json: schema: $ref: '#/components/schemas/Bundle' components: schemas: Bundle: type: object description: FHIR Bundle resource properties: resourceType: type: string enum: - Bundle id: type: string type: type: string enum: - searchset - collection - transaction - batch - history total: type: integer link: type: array items: type: object properties: relation: type: string url: type: string entry: type: array items: type: object properties: fullUrl: type: string resource: type: object additionalProperties: true OperationOutcome: type: object properties: resourceType: type: string enum: - OperationOutcome issue: type: array items: type: object properties: severity: type: string enum: - fatal - error - warning - information code: type: string diagnostics: type: string Patient: type: object description: FHIR R4 Patient resource (US Core Patient Profile) properties: resourceType: type: string enum: - Patient id: type: string meta: type: object properties: versionId: type: string lastUpdated: type: string format: date-time profile: type: array items: type: string identifier: type: array items: type: object properties: use: type: string type: type: object properties: coding: type: array items: type: object properties: system: type: string code: type: string system: type: string value: type: string active: type: boolean name: type: array items: type: object properties: use: type: string enum: - official - usual - nickname - anonymous family: type: string given: type: array items: type: string telecom: type: array items: type: object properties: system: type: string enum: - phone - fax - email - pager - url - sms value: type: string use: type: string enum: - home - work - temp - old - mobile gender: type: string enum: - male - female - other - unknown birthDate: type: string format: date deceasedBoolean: type: boolean deceasedDateTime: type: string format: date-time address: type: array items: type: object properties: use: type: string line: type: array items: type: string city: type: string state: type: string postalCode: type: string country: type: string communication: type: array items: type: object properties: language: type: object properties: coding: type: array items: type: object properties: system: type: string code: type: string responses: Unauthorized: description: SMART on FHIR authorization required content: application/fhir+json: schema: $ref: '#/components/schemas/OperationOutcome' NotFound: description: Resource not found content: application/fhir+json: schema: $ref: '#/components/schemas/OperationOutcome' securitySchemes: SMART_OAuth2: type: oauth2 description: SMART on FHIR OAuth 2.0 authorization flows: authorizationCode: authorizationUrl: https://yourhospital.meditech.com/oauth/authorize tokenUrl: https://yourhospital.meditech.com/oauth/token scopes: patient/*.read: Read access to all patient-owned resources user/*.read: Practitioner read access to all resources launch: EHR launch context openid: OpenID Connect identity fhirUser: FHIR user claim externalDocs: description: Meditech Interoperability Documentation url: https://ehr.meditech.com/ehr-solutions/meditech-interoperability