ModMed Practitioner API

The Practitioner FHIR resource typeBase profile: http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner

OpenAPI Specification

modernizing-medicine-practitioner-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ModMed Certified Practitioner 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
  description: 'The Practitioner FHIR resource type<br/>Base profile: http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner'
paths:
  /Practitioner/{id}:
    get:
      tags:
      - Practitioner
      summary: 'read-instance: Read Practitioner 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'
              examples:
                physician-with-npi:
                  summary: Physician with NPI, email, mobile phone, and address
                  value:
                    resourceType: Practitioner
                    id: 1.120182.2.14672596
                    meta:
                      source: Organization/1.120182
                      profile:
                      - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner
                    identifier:
                    - system: http://hl7.org/fhir/sid/us-npi
                      value: '3102489191'
                    active: true
                    name:
                    - family: Doe
                      given:
                      - Jane
                    telecom:
                    - system: email
                      value: Jane.Doe@pb.com
                    - system: phone
                      value: '1112223333'
                      use: mobile
                    address:
                    - line:
                      - 123 Main Street
                      city: Boca Raton
                      state: FL
                      postalCode: '334371111'
                      country: United States of America
            application/fhir+xml:
              schema:
                $ref: '#/components/schemas/FHIR-XML-RESOURCE'
  /Practitioner:
    get:
      tags:
      - Practitioner
      summary: 'search-type: Search for Practitioner 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 the practitioner record is active
        required: false
        schema:
          type: string
      - name: email
        in: query
        description: A value in an email contact
        required: false
        schema:
          type: string
      - name: family
        in: query
        description: A portion of the family name
        required: false
        schema:
          type: string
      - name: given
        in: query
        description: A portion of the given name
        required: false
        schema:
          type: string
      - name: identifier
        in: query
        description: A practitioner's Identifier
        required: false
        schema:
          type: string
      - name: name
        in: query
        description: A server defined search that may match any of the string fields in the HumanName, including family, give, prefix, suffix, suffix, and/or text
        required: false
        schema:
          type: string
      - name: phone
        in: query
        description: A value in a phone contact
        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'
              examples:
                practitioner-bundle:
                  summary: '5 of 19 shown — covers: physician with NPI + full address, NPI-only, full telecom (email/phone/fax), no-NPI staff (data-absent-reason), and minimal admin record'
                  value:
                    resourceType: Bundle
                    type: searchset
                    total: 19
                    link:
                    - relation: self
                      url: https://fhirmp.mmi.prod.fhir.ema-api.com/fhir/r4/Practitioner
                    entry:
                    - fullUrl: https://fhirmp.mmi.prod.fhir.ema-api.com/fhir/r4/Practitioner/1.120182.2.14672596
                      resource:
                        resourceType: Practitioner
                        id: 1.120182.2.14672596
                        meta:
                          source: Organization/1.120182
                          profile:
                          - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner
                        identifier:
                        - system: http://hl7.org/fhir/sid/us-npi
                          value: '3102489191'
                        active: true
                        name:
                        - family: Doe
                          given:
                          - Jane
                        telecom:
                        - system: email
                          value: Jane.Doe@pb.com
                        - system: phone
                          value: '1112223333'
                          use: mobile
                        address:
                        - line:
                          - 123 Main Street
                          city: Boca Raton
                          state: FL
                          postalCode: '334371111'
                          country: United States of America
                    - fullUrl: https://fhirmp.mmi.prod.fhir.ema-api.com/fhir/r4/Practitioner/1.120182.2.14672595
                      resource:
                        resourceType: Practitioner
                        id: 1.120182.2.14672595
                        meta:
                          source: Organization/1.120182
                          profile:
                          - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner
                        identifier:
                        - system: http://hl7.org/fhir/sid/us-npi
                          value: '9178840274'
                        active: true
                        name:
                        - family: Sherling
                          given:
                          - Michael
                        telecom:
                        - system: email
                          value: Michael.Sherling@pb.com
                    - fullUrl: https://fhirmp.mmi.prod.fhir.ema-api.com/fhir/r4/Practitioner/1.120182.2.17081470
                      resource:
                        resourceType: Practitioner
                        id: 1.120182.2.17081470
                        meta:
                          source: Organization/1.120182
                          profile:
                          - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner
                        identifier:
                        - system: http://hl7.org/fhir/sid/us-npi
                          value: '0000000000'
                        active: true
                        name:
                        - family: Provider
                          given:
                          - FHIR
                        telecom:
                        - system: email
                          value: fhir-provider@modmed.com
                        - system: phone
                          value: '2155551212'
                          use: home
                        - system: phone
                          value: '2155551212'
                          use: mobile
                        - system: phone
                          value: '2155551212'
                          use: work
                        - system: fax
                          value: '2155551212'
                          use: work
                        address:
                        - line:
                          - 123 Main Street
                          city: Boca Raton
                          state: FL
                          postalCode: '334371111'
                          country: United States of America
                    - fullUrl: https://fhirmp.mmi.prod.fhir.ema-api.com/fhir/r4/Practitioner/1.120182.2.14672597
                      resource:
                        resourceType: Practitioner
                        id: 1.120182.2.14672597
                        meta:
                          source: Organization/1.120182
                          profile:
                          - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner
                        identifier:
                        - extension:
                          - url: http://hl7.org/fhir/StructureDefinition/data-absent-reason
                            valueCode: unknown
                        active: true
                        name:
                        - family: Practitioner
                          given:
                          - Nurse
                        telecom:
                        - system: email
                          value: nurse@pb.com
                    - fullUrl: https://fhirmp.mmi.prod.fhir.ema-api.com/fhir/r4/Practitioner/1.120182.2.14657385
                      resource:
                        resourceType: Practitioner
                        id: 1.120182.2.14657385
                        meta:
                          source: Organization/1.120182
                          profile:
                          - http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner
                        identifier:
                        - extension:
                          - url: http://hl7.org/fhir/StructureDefinition/data-absent-reason
                            valueCode: unknown
                        active: true
                        name:
                        - family: Admin
                          given:
                          - Firm
            application/fhir+xml:
              schema:
                $ref: '#/components/schemas/FHIR-XML-RESOURCE'
components:
  schemas:
    FHIR-XML-RESOURCE:
      type: object
      description: A FHIR resource
    FHIR-JSON-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)