Giter Site home page Giter Site logo

fastenhealth / fasten-sources Goto Github PK

View Code? Open in Web Editor NEW
16.0 2.0 6.0 58.02 MB

The Fasten Sources is a library that defines medical provider metadata (definitions - OpenID Metadata documents) and http clients (OAuth2/Smart-on-FHIR clients) which can be used to retrieve data from various Medical Providers (clients).

Go 78.13% HTML 21.75% Makefile 0.05% Dockerfile 0.07%
emr healthcare personal-health-record fhir-client smart-on-fhir

fasten-sources's Introduction

fasten_view

fasten-sources

CI codecov GitHub release (latest by date) Discord Join Request Providers Join Mailing List GitHub Sponsors

The Fasten Sources is a library that contains medical provider metadata (definitions - OpenID Metadata documents) and http clients (OAuth2/Smart-on-FHIR clients) which can be used to retrieve data from various Medical Providers (clients).

The source data is generated by the fasten-sources-gen project, and then copied to the catalog folder of this project.

See PLATFORM_LIST.md for a full list of EHR platforms supported by this repo.

See toolbox.fastenhealth.com for a list of all supported Healthcare Providers.

Usage

Search Engine

Brands and Portals will be stored and indexed in Elasticsearch. The search engine will be used to find the correct Brand and associated Portals & Endpoints

Definitions

Definitions are OpenID Metadata documents that are used to configure OAuth2 clients. These definitions contain Endpoint information merged with Platform configuration

Types

There are multiple protocols used by the Medical Provider industry to transfer patient data, the following mechanisms are the ones that Fasten supports

Definition Folder Description
clients/factory Automatically created client initializer
clients/internal/base Manually created base OAuth clients for various FHIR versions (R3/R4). These are the base clients that all platforms inherit from.
clients/internal/platform Automatically created OAuth clients for various EMR platforms. Manually created test files
clients/internal/sandbox Automatically created OAuth clients for accessing test FHIR servers full of synthetic data. Manually created test files
clients/internal/source Automatically created OAuth clients for accessing production data from various healthcare institutions. Usually inherit from Platform clients
definitions Automatically created definition files. These files are generated from files created by fasten-sources-gen and are used by Fasten Lighthouse.

fasten-sources's People

Contributors

analogj avatar easternpa avatar hkamran80 avatar packagr-io[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

fasten-sources's Issues

Maximeyes Configuration

  • WORKING - kind of.
  • Unable to find sandbox credentials for Maximeyes test account
{
  "custom_definition": true,
  "platform_type": "maximeyes",
  "authorization_endpoint": "https://connectsandbox.first-insight.com/connect/authorize",
  "token_endpoint": "https://connectsandbox.first-insight.com/connect/token",
  "url": "https://fhirdehr.maximeyes.com/api/FhirTest/R4",
  "client_id": "XXXXX",
  "redirect_uri": "https://lighthouse.fastenhealth.com/sandbox/callback/maximeyes",
  "grant_types_supported": [
    "authorization_code"
  ],
  "response_types_supported": [
    "code"
  ],
  "response_modes_supported": [
    "query"
  ],
  "aud": "https://fhirdehr.maximeyes.com/api/FhirTest/R4",
  "scopes_supported": [
    "fhirUser",
    "openid",
    "offline_access",
    "patient/Encounter.read",
    "patient/Patient.read"
  ],
  "confidential": false,
  "code_challenge_methods_supported": [
    "S256"
  ],
  "issuer": "https://fhirdehr.maximeyes.com/api/FhirTest/R4"
}

Support form is broken - https://customer.first-insight.com/contact_form.asp

Hi, 

I'm building a Patient-Access Application using your provided documentation: https://customer.first-insight.com/downloads/forms/MaximEyes-FHIR-API-Documentation.pdf

I'm able to correctly generate and visit an Authorization Url for the following sandbox FHIR endpoint - https://fhirdehr.maximeyes.com/api/FhirTest/R4

However I was unable to find any sandbox credentials to login and complete the SMART-on-FHIR flow to verify the integration is working successfully. 

Can you provide me with those credentials, or a link to the page where they can be found?

EOB Contained Resources need to be processed and stored in the DB.

{
    "resourceType": "ExplanationOfBenefit",
    "id": "carrier--10000930037917",
    "meta": {
        "lastUpdated": "2023-06-14T12:31:42.354-04:00",
        "profile": [
            "http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Professional-NonClinician"
        ]
    },
    "contained": [
        {
            "resourceType": "Observation",
            "id": "line-observation-1",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-2",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-3",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-4",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-5",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-6",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-7",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-8",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-9",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-10",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-11",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-12",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-13",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        },
        {
            "resourceType": "Observation",
            "id": "line-observation-14",
            "status": "unknown",
            "code": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_type_cd",
                        "code": "R1",
                        "display": "Hemoglobin Test"
                    }
                ]
            },
            "valueQuantity": {
                "value": 0
            }
        }
    ],
    "extension": [
        {
            "url": "https://bluebutton.cms.gov/resources/variables/nch_near_line_rec_ident_cd",
            "valueCoding": {
                "system": "https://bluebutton.cms.gov/resources/variables/nch_near_line_rec_ident_cd",
                "code": "O",
                "display": "Part B physician/supplier claim record (processed by local carriers; can include DMEPOS services)"
            }
        },
        {
            "url": "https://bluebutton.cms.gov/resources/variables/carr_num",
            "valueIdentifier": {
                "system": "https://bluebutton.cms.gov/resources/variables/carr_num",
                "value": "00510"
            }
        },
        {
            "url": "https://bluebutton.cms.gov/resources/variables/carr_clm_cntl_num",
            "valueIdentifier": {
                "system": "https://bluebutton.cms.gov/resources/variables/carr_clm_cntl_num",
                "value": "-700301157"
            }
        },
        {
            "url": "https://bluebutton.cms.gov/resources/variables/carr_clm_pmt_dnl_cd",
            "valueCoding": {
                "system": "https://bluebutton.cms.gov/resources/variables/carr_clm_pmt_dnl_cd",
                "code": "1",
                "display": "Physician/supplier"
            }
        },
        {
            "url": "https://bluebutton.cms.gov/resources/variables/asgmntcd",
            "valueCoding": {
                "system": "https://bluebutton.cms.gov/resources/variables/asgmntcd",
                "code": "A",
                "display": "Assigned claim"
            }
        },
        {
            "url": "https://bluebutton.cms.gov/resources/variables/carr_clm_entry_cd",
            "valueCoding": {
                "system": "https://bluebutton.cms.gov/resources/variables/carr_clm_entry_cd",
                "code": "1",
                "display": "Original debit; void of original debit (If CLM_DISP_CD = 3, code 1 means voided original debit)"
            }
        }
    ],
    "identifier": [
        {
            "type": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType",
                        "code": "uc",
                        "display": "Unique Claim ID"
                    }
                ]
            },
            "system": "https://bluebutton.cms.gov/resources/variables/clm_id",
            "value": "-10000930037917"
        },
        {
            "type": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType",
                        "code": "uc",
                        "display": "Unique Claim ID"
                    }
                ]
            },
            "system": "https://bluebutton.cms.gov/resources/identifier/claim-group",
            "value": "-1632178264"
        }
    ],
    "status": "active",
    "type": {
        "coding": [
            {
                "system": "https://bluebutton.cms.gov/resources/variables/nch_clm_type_cd",
                "code": "71",
                "display": "Local carrier non-durable medical equipment, prosthetics, orthotics, and supplies (DMEPOS) claim"
            },
            {
                "system": "https://bluebutton.cms.gov/resources/codesystem/eob-type",
                "code": "CARRIER"
            },
            {
                "system": "http://terminology.hl7.org/CodeSystem/claim-type",
                "code": "professional",
                "display": "Professional"
            }
        ]
    },
    "use": "claim",
    "patient": {
        "reference": "Patient/-10000010254618"
    },
    "billablePeriod": {
        "start": "2017-10-09",
        "end": "2017-10-09"
    },
    "created": "2023-10-04T16:40:16-04:00",
    "insurer": {
        "identifier": {
            "value": "CMS"
        }
    },
    "provider": {
        "identifier": {
            "system": "https://bluebutton.cms.gov/resources/variables/carr_clm_blg_npi_num",
            "value": "1063654341"
        }
    },
    "referral": {
        "identifier": {
            "type": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType",
                        "code": "npi",
                        "display": "National Provider Identifier"
                    }
                ]
            },
            "value": "9999971093"
        }
    },
    "outcome": "complete",
    "disposition": "1",
    "careTeam": [
        {
            "sequence": 1,
            "provider": {
                "identifier": {
                    "type": {
                        "coding": [
                            {
                                "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType",
                                "code": "npi",
                                "display": "National Provider Identifier"
                            }
                        ]
                    },
                    "value": "9999971093"
                }
            },
            "role": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimCareTeamRole",
                        "code": "referring",
                        "display": "Referring"
                    }
                ]
            }
        },
        {
            "sequence": 2,
            "provider": {
                "identifier": {
                    "type": {
                        "coding": [
                            {
                                "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType",
                                "code": "npi",
                                "display": "National Provider Identifier"
                            }
                        ]
                    }
                }
            },
            "role": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimCareTeamRole",
                        "code": "referring",
                        "display": "Referring"
                    }
                ]
            }
        },
        {
            "extension": [
                {
                    "url": "https://bluebutton.cms.gov/resources/variables/carr_line_prvdr_type_cd",
                    "valueCoding": {
                        "system": "https://bluebutton.cms.gov/resources/variables/carr_line_prvdr_type_cd",
                        "code": "0"
                    }
                },
                {
                    "url": "https://bluebutton.cms.gov/resources/variables/prtcptng_ind_cd",
                    "valueCoding": {
                        "system": "https://bluebutton.cms.gov/resources/variables/prtcptng_ind_cd",
                        "code": "3",
                        "display": "Assignment accepted/non-participating"
                    }
                }
            ],
            "sequence": 3,
            "provider": {
                "identifier": {
                    "type": {
                        "coding": [
                            {
                                "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType",
                                "code": "npi",
                                "display": "National Provider Identifier"
                            }
                        ]
                    },
                    "value": "9999971093"
                }
            },
            "responsible": true,
            "role": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimCareTeamRole",
                        "code": "performing",
                        "display": "Performing provider"
                    }
                ]
            },
            "qualification": {
                "coding": [
                    {
                        "system": "https://bluebutton.cms.gov/resources/variables/prvdr_spclty",
                        "code": "01",
                        "display": "General practice"
                    }
                ]
            }
        },
        {
            "sequence": 4,
            "provider": {
                "identifier": {
                    "type": {
                        "coding": [
                            {
                                "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBIdentifierType",
                                "code": "npi",
                                "display": "National Provider Identifier"
                            }
                        ]
                    },
                    "value": "1063654341"
                },
                "display": "HEALTH SERVICES INC"
            },
            "role": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claimcareteamrole",
                        "code": "primary",
                        "display": "Primary provider"
                    }
                ]
            }
        }
    ],
    "supportingInfo": [
        {
            "sequence": 1,
            "category": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType",
                        "code": "clmrecvddate",
                        "display": "Claim Received Date"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/nch_wkly_proc_dt",
                        "display": "NCH Weekly Claim Processing Date"
                    }
                ]
            },
            "timingDate": "2017-10-13"
        },
        {
            "sequence": 2,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-1"
            }
        },
        {
            "sequence": 3,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-2"
            }
        },
        {
            "sequence": 4,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-3"
            }
        },
        {
            "sequence": 5,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-4"
            }
        },
        {
            "sequence": 6,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-5"
            }
        },
        {
            "sequence": 7,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-6"
            }
        },
        {
            "sequence": 8,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-7"
            }
        },
        {
            "sequence": 9,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-8"
            }
        },
        {
            "sequence": 10,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-9"
            }
        },
        {
            "sequence": 11,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-10"
            }
        },
        {
            "sequence": 12,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-11"
            }
        },
        {
            "sequence": 13,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-12"
            }
        },
        {
            "sequence": 14,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-13"
            }
        },
        {
            "sequence": 15,
            "category": {
                "coding": [
                    {
                        "system": "http://terminology.hl7.org/CodeSystem/claiminformationcategory",
                        "code": "info",
                        "display": "Information"
                    },
                    {
                        "system": "https://bluebutton.cms.gov/resources/codesystem/information",
                        "code": "https://bluebutton.cms.gov/resources/variables/line_hct_hgb_rslt_num",
                        "display": "Hematocrit / Hemoglobin Test Results"
                    }
                ]
            },
            "valueReference": {
                "reference": "#line-observation-14"
            }
        }
    ],
    "diagnosis": [
        {
            "sequence": 1,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "Z591",
                        "display": "INADEQUATE HOUSING"
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "Z591",
                        "display": "INADEQUATE HOUSING"
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://terminology.hl7.org/CodeSystem/ex-diagnosistype",
                            "code": "principal",
                            "display": "principal"
                        }
                    ]
                }
            ]
        },
        {
            "sequence": 2,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "R4689",
                        "display": "OTHER SYMPTOMS AND SIGNS INVOLVING APPEARANCE AND BEHAVIOR"
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "R4689",
                        "display": "OTHER SYMPTOMS AND SIGNS INVOLVING APPEARANCE AND BEHAVIOR"
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://terminology.hl7.org/CodeSystem/ex-diagnosistype",
                            "code": "principal",
                            "display": "principal"
                        }
                    ]
                }
            ]
        },
        {
            "sequence": 3,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "T7432X"
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "T7432X"
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimDiagnosisType",
                            "code": "secondary",
                            "display": "Secondary"
                        }
                    ]
                }
            ]
        },
        {
            "sequence": 4,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "M7918"
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "M7918"
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimDiagnosisType",
                            "code": "secondary",
                            "display": "Secondary"
                        }
                    ]
                }
            ]
        },
        {
            "sequence": 5,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "E781",
                        "display": "PURE HYPERGLYCERIDEMIA"
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "E781",
                        "display": "PURE HYPERGLYCERIDEMIA"
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimDiagnosisType",
                            "code": "secondary",
                            "display": "Secondary"
                        }
                    ]
                }
            ]
        },
        {
            "sequence": 6,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "J329",
                        "display": "\"CHRONIC SINUSITIS, UNSPECIFIED\""
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "J329",
                        "display": "\"CHRONIC SINUSITIS, UNSPECIFIED\""
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimDiagnosisType",
                            "code": "secondary",
                            "display": "Secondary"
                        }
                    ]
                }
            ]
        },
        {
            "sequence": 7,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "E119",
                        "display": "TYPE 2 DIABETES MELLITUS WITHOUT COMPLICATIONS"
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "E119",
                        "display": "TYPE 2 DIABETES MELLITUS WITHOUT COMPLICATIONS"
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimDiagnosisType",
                            "code": "secondary",
                            "display": "Secondary"
                        }
                    ]
                }
            ]
        },
        {
            "sequence": 8,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "D649",
                        "display": "\"ANEMIA, UNSPECIFIED\""
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "D649",
                        "display": "\"ANEMIA, UNSPECIFIED\""
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimDiagnosisType",
                            "code": "secondary",
                            "display": "Secondary"
                        }
                    ]
                }
            ]
        },
        {
            "sequence": 9,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "E849",
                        "display": "\"CYSTIC FIBROSIS, UNSPECIFIED\""
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "E849",
                        "display": "\"CYSTIC FIBROSIS, UNSPECIFIED\""
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimDiagnosisType",
                            "code": "secondary",
                            "display": "Secondary"
                        }
                    ]
                }
            ]
        },
        {
            "sequence": 10,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "B965",
                        "display": "PSEUDOMONAS (MALLEI) CAUSING DISEASES CLASSD ELSWHR"
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "B965",
                        "display": "PSEUDOMONAS (MALLEI) CAUSING DISEASES CLASSD ELSWHR"
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimDiagnosisType",
                            "code": "secondary",
                            "display": "Secondary"
                        }
                    ]
                }
            ]
        },
        {
            "sequence": 11,
            "diagnosisCodeableConcept": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10-cm",
                        "code": "E848",
                        "display": "CYSTIC FIBROSIS WITH OTHER MANIFESTATIONS"
                    },
                    {
                        "system": "http://hl7.org/fhir/sid/icd-10",
                        "code": "E848",
                        "display": "CYSTIC FIBROSIS WITH OTHER MANIFESTATIONS"
                    }
                ]
            },
            "type": [
                {
                    "coding": [
                        {
                            "system": "http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBClaimDiagnosisType",
                            "code": "secondary",
                            "display": "Secondary"
                        }
                    ]
                }
            ]
        }
    ],
    "insurance": [
        {
            "focal": true,
            "coverage": {
                "reference": "Coverage/part-b--10000010254618"
            }
        }
    ],
   ...
}

Qualifacts Configuration

  • Qualifacts InSync - Cannot Login to Sandbox env to retrieve Client ID/Secret
  • Qualifacts CareLogic - Waiting
    • Does not support PKCE
  • Qualifacts Credible - Working
    • weird base64Binary contentType

CareLogic Config

{
  "custom_definition": true,
  "platform_type": "qualifacts-carelogic",
  "authorization_endpoint": "https://integration-cert.qualifacts.org/fhir/smart/authorize",
  "token_endpoint": "https://integration-cert.qualifacts.org/fhir/smart/token",
  "url": "https://api-cert.qualifacts.org/api/fhir/r4",
  "client_id": "aca2e695-ab7b-40c0-b17f-60aaf38d1765",
  "redirect_uri": "https://lighthouse.fastenhealth.com/sandbox/callback/qualifacts",
  "grant_types_supported": [
    "authorization_code"
  ],
  "response_types_supported": [
    "code"
  ],
  "response_modes_supported": [
    "query"
  ],
  "aud": "https://api-cert.qualifacts.org/api/fhir/r4",
  "scopes_supported": [
    "fhirUser",
    "openid",
    "profile",
    "offline_access",
    "patient/AllergyIntolerance.read",
    "patient/CarePlan.read",
    "patient/CareTeam.read",
    "patient/Condition.read",
    "patient/Device.read",
    "patient/DiagnosticReport.read",
    "patient/DocumentReference.read",
    "patient/Encounter.read",
    "patient/Goal.read",
    "patient/Immunization.read",
    "patient/Medication.read",
    "patient/MedicationRequest.read",
    "patient/Observation.read",
    "patient/Patient.read",
    "patient/Practitioner.read",
    "patient/Procedure.read",
    "patient/Provenance.read"
  ],
  "confidential": true,
  "code_challenge_methods_supported": [],
  "issuer": "https://api-cert.qualifacts.org/api/fhir/r4",
  "confidential_endpoint": "1c6f73df-6583-43a1-a64e-d4b37b01dae9",
  "should_override_redirect": true,
  "override_redirect": "qualifacts"
}

Add EHRS

  • Anita Systems
  • Cosmic - Cambio
  • Opus Dental - Opus Systemer
  • Prorenata
  • Take Care - CGM
  • WebDoc - Carasent

practicefusion/patientfusion Configuration - 4k Endpoints

No Sandbox for testing.

Does Practice Fusion have a Sandbox environment where our organization can test our API?
No, Practice Fusion does not have a sandbox at this time.

Unsure if my integration is sandbox or production mode

{
  "custom_definition": true,
  "platform_type": "practicefusion",
  "authorization_endpoint": "https://api.patientfusion.com/fhir/r4/v1/118b460b-8390-4754-8e4a-1dd5ee20f599/authorize",
  "token_endpoint": "https://api.patientfusion.com/fhir/r4/v1/118b460b-8390-4754-8e4a-1dd5ee20f599/token",
  "url": "https://api.patientfusion.com/fhir/r4/v1/118b460b-8390-4754-8e4a-1dd5ee20f599",
  "client_id": "XXXX",
  "redirect_uri": "https://lighthouse.fastenhealth.com/sandbox/callback/practicefusion",
  "grant_types_supported": [
    "authorization_code"
  ],
  "response_types_supported": [
    "code"
  ],
  "response_modes_supported": [
    "query"
  ],
  "aud": "https://api.patientfusion.com/fhir/r4/v1/118b460b-8390-4754-8e4a-1dd5ee20f599",
  "scopes_supported": [
    "fhirUser",
    "openid",
    "profile",
    "offline_access",
    "patient/Patient.read"
  ],
  "confidential": false,
  "code_challenge_methods_supported": [
    "S256"
  ],
  "issuer": "https://api.patientfusion.com/fhir/r4/v1/118b460b-8390-4754-8e4a-1dd5ee20f599"
}

Status

  • Email sent Feb 12 requesting Sandbox Credentials, no response. Followup email sent Feb 29th

Different brands and logos - Duplicates okay?

I'm working on some updates in Toolbox, and am wondering whether it makes sense to have separate entries when it would be more clear to users.

As an example, Dell Children's Medical Group (Outpatient) in Austin, TX is owned by the Seton Outpatient division of Ascension and shares the same Athena portal, but brands itself differently from its Ascension parent. Ascension's ownership is certainly not a secret, but as Fasten grows over time and is used by a much wider audience than tech nerds like myself, it would be helpful for users to see the Dell Children's name and logo when selecting sources. Essentially, nobody is going to search for "Ascension" when looking for "Dell Children's". Just one example of many that likely exist.

My vote would be to keep two separate source entries for clarity and better UX, but with some boundaries, Checking to see if there's agreement before I spend much time updating a bunch of names, NPI's and logos in Toolbox.

DrChrono

{
  "custom_definition": true,
  "platform_type": "drchrono",
  "should_override_redirect": false,
  "cors_relay_required": false,
  "override_redirect": "",
  "authorization_endpoint": "https://stg.drchrono-fhir.everhealthsoftware.com/core/connect/authorize",
  "token_endpoint": "https://stg.drchrono-fhir.everhealthsoftware.com/core/connect/token",
  "url": "https://stg.drchrono-fhirpresentation.everhealthsoftware.com/fhir/drchronodev/drchronodev/r4",
  "client_id": "xxxx",
  "redirect_uri": "https://lighthouse.fastenhealth.com/sandbox/callback/drchrono",
  "grant_types_supported": [
    "authorization_code"
  ],
  "response_types_supported": [
    "code"
  ],
  "response_modes_supported": [
    "query"
  ],
  "aud": "https://stg.drchrono-fhirpresentation.everhealthsoftware.com/fhir/drchronodev/drchronodev/r4/",
  "scopes_supported": [
    "fhirUser",
    "openid",
    "offline_access",
    "patient/Patient.read"
  ],
  "confidential": false,
  "confidential_endpoint": "",
  "pkce": true,
  "code_challenge_methods_supported": [
    "S256"
  ],
  "issuer": "https://stg.drchrono-fhirpresentation.everhealthsoftware.com/fhir/drchronodev/drchronodev/r4"
}

NextGen patient portal - Branding


/appointments/services/v1/appointments/practice/" + N + "/member/" + e
/appointments/services/v1/appointments/practice/" + N + "/member/" + e + "/next
/appointments/services/v1/appointments/practice/" + N + "/member/" + e + "/next
/appointments/services/v1/appointments/practice/" + N + "/member/" + e;
/assets/i18n/", x = ".json
/forms-rest/practices/" + ce.practiceId + "/patients/" + G + "/formHeaders?formType=PRE_REG
/messaging-rest/practices/" + j + "/patients/" + _e + "/directccdtransmissions
/messaging-rest/practices/" + j + "/patients/" + _e + "/emailccdtransmissions
/messaging-rest/practices/" + N + "/patients/" + e + "/emaillabresults
/messaging-rest/practices/" + N + "/patients/" + e + "/emaillabresultsdirect
/messaging-rest/practices/${_e.practiceId}/patients/${U}/messageheaders?folder=${P}&pageSize=${this.pageSize}&page=${pe}&sortColumn=${me}&asc=${j}
/messaging-rest/practices/${P.practiceId}/patients/${this.getActiveAccountId()}/messageheaders/messagecoun
/messaging-rest/practices/${pe}/patients/${this.getActiveAccountId()}/messageheaders/${U}
/messaging-rest/practices/${pe}/patients/${this.getActiveAccountId()}/messageheaders/${U}
/messaging-rest/practices/${P}/patients/${this.getActiveAccountId()}/messages
/messaging-rest/practices/${U}/patients/${P}/messages/${pe}
/patient/app/?wicket:bookmarkablePage=%3Anet.medfusion.encounter.patient.Logout
/phr-rest/services
/phr-rest/services/members/" + j + "/ccds/log" + `?eventStatus=${le}&eventType=${Ae}
/phr-rest/services/members/" + j + "/ccds?sendDownloadEvents=false
/phr-rest/services/members/" + N + "/labresults/log" + `?eventStatus=${U}&eventType=${P}
/phr-rest/services/practices/" + _e.practiceId + "/members/" + j + "/ccdheaders/ccdcounts?cdaTypes=CONSOL_CCD&cdaTypes=C32_CCD&cdaTypes=CCD&cdaTypes=CONSOL_DISCHARGE&cdaTypes=CONSOL_PROGRESS_NOTE
/phr-rest/services/practices/" + j + "/members/" + _e + "/ccd-requests
/phr-rest/services/practices/" + j + "/members/" + _e + "/ccdheaders/readstatuses?cdaTypes=CONSOL_CCD&cdaTypes=C32_CCD&cdaTypes=CCD&cdaTypes=CONSOL_DISCHARGE&cdaTypes=CONSOL_PROGRESS_NOTE
/phr-rest/services/practices/" + N + "/members/" + e + "/chart/lab/panels/" + U + "/results
/phr-rest/services/practices/" + N + "/members/" + e + "/chart/lab/panels/count
/phr-rest/services/practices/" + N + "/members/" + e + "/chart/lab/panels/criteria?per_page=" + b.V.PAGINATION_LIMIT + "&page=" + U
/phr-rest/services/practices/" + N + "/members/" + e + "/chart/lab/panels/onload?per_page=" + b.V.PAGINATION_LIMIT + "&page=" + U
/phr-rest/services/practices/" + N + "/members/" + e + "/panels/" + U + "/updatestatus
/phr-rest/services/practices/" + N + "/panel/" + e + "/download
/practice-svcs/practices/" + j + "/locations?isOnlyLocationsNames=true
/practice-svcs/practices/" + j + "/npp
/practice-svcs/practices/" + j + "/resources?language=" + this.getLanguage()
/practice-svcs/practices/" + j + "/solutions/configurations?solutionType=" + _e
/practice-svcs/practices/" + j + "/solutions?language=" + this.getLanguage()
/practice-svcs/practices/${e}/locations/${U}
/practice-svcs/practices/${j}/locations
/practice-svcs/textconfig/" + j + "/" + _e + "?language=" + F
/practice-svcs/v1/practices/" + j + "/terms-of-use/" + _e + "/versions/" + le
/practice-svcs/v1/practices/" + this.getPortalAbbreviation() + "?language=" + this.getLanguage() + "&fields=" + j
/practice-svcs/v1/practices/" + this.practice.practiceId + "/age-out-config
/practice-svcs/v1/practices/extended/" + _e + "?language=" + this.getLanguage() + "&fields=" + j
/practice/rest/internal/mixpanel/token
/practice/rest/sens/ejb/broker/broadcastBroker/method/findBroadcasts
/practice/rest/sens/ejb/broker/paymentBroker/method/getLastTransaction
/practice/rest/sens/ejb/broker/paymentBroker/method/getPatientPayBillTransactions
/secure/member/login/exit.cfm
/statements/services/v1/practices/" + e.practiceId + "/patients/" + U.currentPatient.accountId + "/accountsummary
/statements/services/v1/practices/" + e.practiceId + "/patients/" + U.currentPatient.accountId + /statementsummary/latest
/statements/services/v1/practices/" + U.practiceId + "/patients/" + P.currentPatient.accountId + "/statements/" + e
/user-rest/access-token
/user-rest/matcher
/user-rest/matcher?sendEmail=true
/user-rest/practices/" + Ae + "/accounts/" + He
/user-rest/practices/" + Ae + "/accounts/" + le.accountId
/user-rest/practices/" + e + "/accounts/" + U + "/preferences
/user-rest/practices/" + F.practiceId + "/patients/" + Ae.accountId + "/relations?dependentsOnly=false
/user-rest/practices/" + G + "/accounts/" + te
/user-rest/practices/" + G.practiceId + "/accounts?acknowledgeNpp=true
/user-rest/practices/" + G.practiceId + "/credentialMatcher
/user-rest/practices/" + G.practiceId + "/inactivepatients/" + M.uuid + "?dateOfBirth=" + te + "&zipCode=" + M.postalCode
/user-rest/practices/" + G.practiceId + "/relations
/user-rest/practices/" + Ie.practiceId + "/authUserInvitations/" + M.uuid + "?zipCode=" + M.postalCode + "&dateOfBirth=" + this.dateObjectToStringPipe.transform(M.dob
/user-rest/practices/" + le + "/accounts/" + Ae + "/preferences
/user-rest/practices/" + M + "/accounts/preferences
/user-rest/practices/" + M + "/patientMatcher
/user-rest/practices/" + M + "/patients/" + G + "/authUserPermissions?dependentMemberId=" + te
/user-rest/practices/" + M + "/patients/" + G + "/credentials
/user-rest/practices/" + M + "/patients/" + G + "/credentials
/user-rest/practices/" + M + "/patients/" + G + "/credentials
/user-rest/practices/" + te.practiceId + "/authUserInvitations/" + M;
/user-rest/practices/" + te.practiceId + "/inactivepatients/" + M
/user-rest/practices/" + te.practiceId + "/patients/" + M + "/credentials
/user-rest/practices/" + this.practiceService.practice.practiceId + "/patients/" + this.user.accountId + "/userSession
/user-rest/practices/" + U.practiceId + "/patients/" + P.accountId + "/relations?dependentsOnly=false
/user-rest/securityquestions
/user-rest/user-rest/v1/practices?show_dependents=" + G + "&isOldHost=" + window.location.hostname.includes("medfusion")
/user-rest/v1/practices/" + j + "/members/" + this.getCurrentPatient().accountId + "/green-light-health/sso
/user-rest/v1/practices/" + le + "/members/" + Ae.accountId + "/acknowledged-npps
/user-rest/v1/practices/" + le + "/members/" + Ae.accountId + "/acknowledged-tous
/user-rest/v1/practices/" + M + "/health-key
/user-rest/v1/practices/" + M + "/user-session
/user-rest/v1/practices/" + M + "/user-session
/user-rest/v1/practices/${M.practiceId}/user-session
practice/rest/sens/ejb/broker/paymentBroker/method/getPatientPayBillTransactions
practice/rest/sens/ejb/broker/paymentBroker/method/payBillOnline
statements/services/v1/practices/" + R + "/patients/" + ie.currentPatient.accountId + "/balance/latest

Broken images in sources lookup page

image

When I view source I noticed there's a missing / at the front. Not sure if it's meant to be a relative path or not:

image

When I try to go to /assets/sources/precision-healthcare-specialists.png a white page loads and this shows up in the inspector:

image

Ascension Seton source notes

In the source list, Ascension Seton is identified as a user of Cerner. That only applies to hospital records, Records from visits to Ascension clinics and doctors' offices are in Athena. Additional notes below:

Ascension Seton - Hospital records are in Oracle/Cerner and records from doctor visits are in Athena (Note that some hospital records are also in Athena, especially if patient's provider has seen them both in the hospital and as an outpatient). Cannot segment mental/behavioral health from other records. Records downloaded via patient portal are only available in a zip file containing PDF and CDA XSL StyleSheet. No instructions are provided to patient to explain why the XSL stylesheet is provided or can be used. Patient can also send records via Direct Exchange email (which potentially provides structured data).

Ascension adds information from data brokers and other sources to patient records for Social Determinants of Health initiatives. The socioeconomic data collected is not available to patients, though they're the subject of the income and other PII data collected. Patients are also prevented from accessing their medical data that is added to their medical records by Google Health AI and Project Nightingale.

Ascension notes that full medical records are only available via Swellbox (Ciox/Datavant).

Hospital visit records: https://seton.consumeridp.us-1.healtheintent.com/saml2/sso/login?authenticationRequestId=84f65123-d979-404e-829f-3726371a33b0
Doctor visit records: https://8363-1.portal.athenahealth.com/
Full medical records: https://www.swellbox.com/ascension-texas-seton-wizard.html

Medhost Configuration

Working, kind of.

  • authentication flow works, redirect back to fasten works.
  • Unable to determine Patient ID to do sync.
  • Messaged Support, waiting for response.
{
  "custom_definition": true,
  "platform_type": "medhost",
  "authorization_endpoint": "https://api.mhdi10xasayd.com/smart/oauth2/auth",
  "token_endpoint": "https://api.mhdi10xasayd.com/smart/oauth2/token",
  "url": "https://fhir.yourcareuniverse.net/tenant/5b05fcf1-78b5-4245-afe5-72b608e328c3",
  "client_id": "",
  "redirect_uri": "https://lighthouse.fastenhealth.com/sandbox/callback/medhost",
  "grant_types_supported": [
    "authorization_code"
  ],
  "response_types_supported": [
    "code"
  ],
  "response_modes_supported": [
    "query"
  ],
  "aud": "https://fhir.yourcareuniverse.net/tenant/5b05fcf1-78b5-4245-afe5-72b608e328c3",
  "scopes_supported": [
    "patient/Encounter.read",
    "patient/Patient.read"
  ],
  "confidential": false,
  "code_challenge_methods_supported": [
    "S256"
  ],
  "custom_source": true,
  "issuer": "https://fhir.yourcareuniverse.net/tenant/5b05fcf1-78b5-4245-afe5-72b608e328c3"
}

Uses non-standard user key in extended data attribute in JWT to return Patient information:


    "aud": [
        "https://fhir.yourcareuniverse.net/tenant/5b05fcf1-78b5-4245-afe5-72b608e328c3"
    ],
    "client_id": "XXXXX",
    "exp": 1707341939,
    "ext": {
        "authorities": [
            "ROLE_PATIENT"
        ],
        "fhirUser": "https://fhir.yourcareuniverse.net/tenant/5b05fcf1-78b5-4245-afe5-72b608e328c3/Patient/8e74d3ae-c376-4910-9b6d-50f6356098f6",
        "user": "Patient/8e74d3ae-c376-4910-9b6d-50f6356098f6",
        "user_name": "XXXXX"
    },
    "iss": "https://idp.yourcareuniverse.net/",
    "scp": [
        "fhirUser",
        "openid",
        "offline_access",
        "patient/Encounter.read",
        "patient/Patient.read"
    ],
    "sub": "XXXXX"
}```



#WARNING: smart-configuration scopes list is incorrect:

`The OAuth 2.0 Client is not allowed to request scope 'patient/Flag.read'."}' `

Unable to add Athena Health source - Acess Control Allow Origin Header

When trying to setup athena health the following is logged in the console:

Access to fetch at 'https://api.platform.athenahealth.com/oauth2/v1/token' from origin 'http://xxxxxxxxx:9090/' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

netsmart configuration

  • Authorization Url
  • Sandbox Account Login
  • prod account
{
  "custom_definition": true,
  "platform_type": "netsmart",
  "authorization_endpoint": "https://oauthtest.netsmartcloud.com/authorize",
  "token_endpoint": "https://oauthtest.netsmartcloud.com/token",
  "url": "https://fhirtest.netsmartcloud.com/uscore/v1",
  "client_id": "5b10f7xxxxxea8cb",
  "redirect_uri": "https://lighthouse.fastenhealth.com/sandbox/callback/netsmart",
  "grant_types_supported": [
    "authorization_code"
  ],
  "response_types_supported": [
    "code"
  ],
  "response_modes_supported": [],
  "aud": "https://fhirtest.netsmartcloud.com/uscore/v1",
  "scopes_supported": [
    "fhirUser",
    "openid",
    "profile",
    "offline_access",
    "launch/patient",
    "patient/*.read"
  ],
  "confidential": false,
  "code_challenge_methods_supported": [
    "S256"
  ],
  "issuer": "https://fhirtest.netsmartcloud.com/uscore/v1"
}

Tracking Updates

  • Netsmart does not provide any sandbox credentials in their documentation.
  • Emailed on Feb 12 requesting access. Follow up email on Feb 29th.

NHS configuration

Status:

  • working Oauth redirect
  • using Sandpit credentials, OTP

TODO:

  • requires JWT Authz
{
  "custom_definition": true,
  "platform_type": "nhs",
  "authorization_endpoint": "https://auth.sandpit.signin.nhs.uk/authorize",
  "token_endpoint": "https://auth.sandpit.signin.nhs.uk/token",
  "url": "https://int.api.service.nhs.uk/personal-demographics/FHIR/R4",
  "client_id": "fastenhealth",
  "redirect_uri": "https://lighthouse.fastenhealth.com/sandbox/callback/nhs",
  "grant_types_supported": [
    "authorization_code"
  ],
  "response_types_supported": [
    "code"
  ],
  "response_modes_supported": [
    "query"
  ],
  "aud": "https://int.api.service.nhs.uk/personal-demographics/FHIR/R4",
  "scopes_supported": [
    "openid",
    "profile"
  ],
  "confidential": true,
  "code_challenge_methods_supported": [],
  "issuer": "https://int.api.service.nhs.uk/personal-demographics/FHIR/R4",
  "confidential_endpoint": "982b218a-ce90-4869-a33a-aa4231547fe8",
  "should_override_redirect": true,
  "override_redirect": "nhs"
}

Status - OLD - Using incorrect Authentication method

{
  "custom_definition": true,
  "platform_type": "nhs",
  "authorization_endpoint": "https://int.api.service.nhs.uk/oauth2-mock/authorize",
  "token_endpoint": "https://int.api.service.nhs.uk/oauth2-mock/token",
  "url": "https://int.api.service.nhs.uk/personal-demographics/FHIR/R4",
  "client_id": "XXXX",
  "redirect_uri": "https://lighthouse.fastenhealth.com/sandbox/callback/nhs",
  "grant_types_supported": [
    "authorization_code"
  ],
  "response_types_supported": [
    "code"
  ],
  "response_modes_supported": [
    "query"
  ],
  "aud": "https://int.api.service.nhs.uk/personal-demographics/FHIR/R4",
  "scopes_supported": [
    "nhs-login"
  ],
  "confidential": false,
  "code_challenge_methods_supported": [
    "S256"
  ],
  "issuer": "https://int.api.service.nhs.uk/personal-demographics/FHIR/R4"
}

Register app with CHBase Unify

CHBase Unify's documentation specifies that they follow the [Oauth 2.0 Dynamic Client Registration](https://datatracker.ietf.org/doc/html/rfc7591#section-3.1) standard, however when I try to register a new client, I get an error {"error":"application_type not supported"}

Docs: https://unify-developer.chbase.com/?page=FHIRAPI

Request:

 curl -X POST  https://unify-auth.sbx.chbase.com/application/register -H 'Content-Type: application/json' -d '{ "redirect_uris": [ "https://www.example.com/sandbox/callback/chbase", "https://www.example.com/v1/callback/chbase"], "application_name": "Testing Client Name", "application_type": "implicit", "scope": "patient/*.read openid fhirUser", "grant_types": ["authorization_code"] }'

I've tried various application_type values, including: public, private, implicit, blank.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.