openapi: 3.2.0 info: title: ModMed Certified Practitioner Role API contact: {} version: 4.1-SNAPSHOT description: '**FHIR endpoints are customer-specific.** Each practice has its own Certified FHIR endpoint — browse the directory at https://mm-fhir-endpoint-display.prod.fhir.ema-api.com/. The server below (`https://fhirmp.mmi.prod.fhir.ema-api.com/fhir/r4`) is a production **demonstration endpoint** for testing your integration; it behaves exactly like any practice''s endpoint. See the **Authentication** documentation for the OAuth 2.0 / SMART App Launch flow.' servers: - url: https://fhirmp.mmi.prod.fhir.ema-api.com/fhir/r4 description: EMA Certified FHIR API variables: firm: default: fhirmp description: Your firm subdomain (e.g. fhirmp, auraderm). Find yours at https://mm-fhir-endpoint-display.prod.fhir.ema-api.com/ security: - smartOnFhir: - openid - fhirUser - profile - launch/patient - offline_access - patient/AllergyIntolerance.rs - patient/CarePlan.rs - patient/CareTeam.rs - patient/Condition.rs - patient/Coverage.rs - patient/Device.rs - patient/DiagnosticReport.rs - patient/DocumentReference.rs - patient/Encounter.rs - patient/Goal.rs - patient/Immunization.rs - patient/Location.rs - patient/Medication.rs - patient/MedicationRequest.rs - patient/Observation.rs - patient/Organization.rs - patient/Patient.rs - patient/Practitioner.rs - patient/PractitionerRole.rs - patient/Procedure.rs - patient/Provenance.rs - patient/RelatedPerson.rs - patient/ServiceRequest.rs - user/AllergyIntolerance.rs - user/CarePlan.rs - user/CareTeam.rs - user/Condition.rs - user/Coverage.rs - user/Device.rs - user/DiagnosticReport.rs - user/DocumentReference.rs - user/Encounter.rs - user/Goal.rs - user/Immunization.rs - user/Location.rs - user/Medication.rs - user/MedicationRequest.rs - user/Observation.rs - user/Organization.rs - user/Patient.rs - user/Practitioner.rs - user/PractitionerRole.rs - user/Procedure.rs - user/Provenance.rs - user/RelatedPerson.rs - user/ServiceRequest.rs - system/AllergyIntolerance.rs - system/CarePlan.rs - system/CareTeam.rs - system/Condition.rs - system/Coverage.rs - system/Device.rs - system/DiagnosticReport.rs - system/DocumentReference.rs - system/Encounter.rs - system/Goal.rs - system/Immunization.rs - system/Location.rs - system/Medication.rs - system/MedicationRequest.rs - system/Observation.rs - system/Organization.rs - system/Patient.rs - system/Practitioner.rs - system/PractitionerRole.rs - system/Procedure.rs - system/Provenance.rs - system/RelatedPerson.rs - system/ServiceRequest.rs tags: - name: Practitioner Role description: 'The PractitionerRole FHIR resource type Base profile: http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitionerrole' paths: /PractitionerRole/{id}: get: tags: - Practitioner Role summary: 'read-instance: Read PractitionerRole instance' parameters: - name: id in: path description: The resource ID required: true style: simple schema: minimum: 1 type: string example: '123' responses: '200': description: Success content: application/fhir+json: schema: $ref: '#/components/schemas/FHIR-JSON-RESOURCE' application/fhir+xml: schema: $ref: '#/components/schemas/FHIR-XML-RESOURCE' operationId: getPractitionerRoleById x-operation-id-source: derived /PractitionerRole: get: tags: - Practitioner Role summary: 'search-type: Search for PractitionerRole instances' description: This is a search type parameters: - name: _id in: query description: The ID of the resource required: false schema: type: string - name: active in: query description: Whether this practitioner role record is in active use required: false schema: type: string - name: email in: query description: A value in an email contact required: false schema: type: string - name: location in: query description: One of the locations at which this practitioner provides care required: false schema: type: string - name: organization in: query description: The identity of the organization the practitioner represents / acts on behalf of required: false schema: type: string - name: phone in: query description: A value in a phone contact required: false schema: type: string - name: practitioner in: query description: Practitioner that is able to provide the defined services for the organization required: false schema: type: string - name: role in: query description: The practitioner can perform this role at for the organization required: false schema: type: string - name: specialty in: query description: The practitioner has this specialty at an organization required: false schema: type: string - name: telecom in: query description: The value in any kind of contact required: false schema: type: string responses: '200': description: Success content: application/fhir+json: schema: $ref: '#/components/schemas/FHIR-JSON-RESOURCE' application/fhir+xml: schema: $ref: '#/components/schemas/FHIR-XML-RESOURCE' operationId: getPractitionerRole x-operation-id-source: derived components: schemas: FHIR-JSON-RESOURCE: type: object description: A FHIR resource FHIR-XML-RESOURCE: type: object description: A FHIR resource securitySchemes: smartOnFhir: type: oauth2 flows: authorizationCode: authorizationUrl: https://fhirmp.mmi.prod.fhir.ema-api.com/fhir/r4/auth/realms/fhir/protocol/openid-connect/auth tokenUrl: https://fhirmp.mmi.prod.fhir.ema-api.com/fhir/r4/auth/realms/fhir/protocol/openid-connect/token scopes: openid: OpenID Connect (auto-granted) fhirUser: FHIR reference to the authenticated practitioner profile: Standard OIDC profile claims launch/patient: Request patient context in the token offline_access: Request a long-lived refresh token patient/AllergyIntolerance.rs: Read/search AllergyIntolerance (patient context) patient/CarePlan.rs: Read/search CarePlan (patient context) patient/CareTeam.rs: Read/search CareTeam (patient context) patient/Condition.rs: Read/search Condition (patient context) patient/Coverage.rs: Read/search Coverage (patient context) patient/Device.rs: Read/search Device (patient context) patient/DiagnosticReport.rs: Read/search DiagnosticReport (patient context) patient/DocumentReference.rs: Read/search DocumentReference (patient context) patient/Encounter.rs: Read/search Encounter (patient context) patient/Goal.rs: Read/search Goal (patient context) patient/Immunization.rs: Read/search Immunization (patient context) patient/Location.rs: Read/search Location (patient context) patient/Medication.rs: Read/search Medication (patient context) patient/MedicationRequest.rs: Read/search MedicationRequest (patient context) patient/Observation.rs: Read/search Observation (patient context) patient/Organization.rs: Read/search Organization (patient context) patient/Patient.rs: Read/search Patient (patient context) patient/Practitioner.rs: Read/search Practitioner (patient context) patient/PractitionerRole.rs: Read/search PractitionerRole (patient context) patient/Procedure.rs: Read/search Procedure (patient context) patient/Provenance.rs: Read/search Provenance (patient context) patient/RelatedPerson.rs: Read/search RelatedPerson (patient context) patient/ServiceRequest.rs: Read/search ServiceRequest (patient context) user/AllergyIntolerance.rs: Read/search AllergyIntolerance (user context) user/CarePlan.rs: Read/search CarePlan (user context) user/CareTeam.rs: Read/search CareTeam (user context) user/Condition.rs: Read/search Condition (user context) user/Coverage.rs: Read/search Coverage (user context) user/Device.rs: Read/search Device (user context) user/DiagnosticReport.rs: Read/search DiagnosticReport (user context) user/DocumentReference.rs: Read/search DocumentReference (user context) user/Encounter.rs: Read/search Encounter (user context) user/Goal.rs: Read/search Goal (user context) user/Immunization.rs: Read/search Immunization (user context) user/Location.rs: Read/search Location (user context) user/Medication.rs: Read/search Medication (user context) user/MedicationRequest.rs: Read/search MedicationRequest (user context) user/Observation.rs: Read/search Observation (user context) user/Organization.rs: Read/search Organization (user context) user/Patient.rs: Read/search Patient (user context) user/Practitioner.rs: Read/search Practitioner (user context) user/PractitionerRole.rs: Read/search PractitionerRole (user context) user/Procedure.rs: Read/search Procedure (user context) user/Provenance.rs: Read/search Provenance (user context) user/RelatedPerson.rs: Read/search RelatedPerson (user context) user/ServiceRequest.rs: Read/search ServiceRequest (user context) system/AllergyIntolerance.rs: Read/search AllergyIntolerance (system/bulk context) system/CarePlan.rs: Read/search CarePlan (system/bulk context) system/CareTeam.rs: Read/search CareTeam (system/bulk context) system/Condition.rs: Read/search Condition (system/bulk context) system/Coverage.rs: Read/search Coverage (system/bulk context) system/Device.rs: Read/search Device (system/bulk context) system/DiagnosticReport.rs: Read/search DiagnosticReport (system/bulk context) system/DocumentReference.rs: Read/search DocumentReference (system/bulk context) system/Encounter.rs: Read/search Encounter (system/bulk context) system/Goal.rs: Read/search Goal (system/bulk context) system/Immunization.rs: Read/search Immunization (system/bulk context) system/Location.rs: Read/search Location (system/bulk context) system/Medication.rs: Read/search Medication (system/bulk context) system/MedicationRequest.rs: Read/search MedicationRequest (system/bulk context) system/Observation.rs: Read/search Observation (system/bulk context) system/Organization.rs: Read/search Organization (system/bulk context) system/Patient.rs: Read/search Patient (system/bulk context) system/Practitioner.rs: Read/search Practitioner (system/bulk context) system/PractitionerRole.rs: Read/search PractitionerRole (system/bulk context) system/Procedure.rs: Read/search Procedure (system/bulk context) system/Provenance.rs: Read/search Provenance (system/bulk context) system/RelatedPerson.rs: Read/search RelatedPerson (system/bulk context) system/ServiceRequest.rs: Read/search ServiceRequest (system/bulk context)