fastenhealth / fasten-sources

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).
20 stars 8 forks source link

Flatiron #42

Open AnalogJ opened 6 months ago

AnalogJ commented 6 months ago
{
  "custom_definition": true,
  "platform_type": "flatiron",
  "should_override_redirect": false,
  "cors_relay_required": false,
  "override_redirect": "",
  "authorization_endpoint": "https://accounts.flatiron.com/connect/authorize",
  "token_endpoint": "https://accounts.flatiron.com/connect/token",
  "url": "https://fhir.prod.flatiron.io/fhir",
  "client_id": "xxx",
  "redirect_uri": "https://lighthouse.fastenhealth.com/sandbox/callback/flatiron",
  "grant_types_supported": [
    "authorization_code"
  ],
  "response_types_supported": [
    "code"
  ],
  "response_modes_supported": [
    "fragment"
  ],
  "aud": "",
  "scopes_supported": [
    "fhirUser",
    "openid",
    "offline_access",
    "launch/patient",
    "patient/Patient.read"
  ],
  "confidential": false,
  "confidential_endpoint": "",
  "pkce": true,
  "code_challenge_methods_supported": [
    "S256"
  ],
  "issuer": "https://fhir.prod.flatiron.io/fhir"
}

Status:

AnalogJ commented 5 months ago

Working portal page, no patient id in response:

{
  "custom_definition": true,
  "platform_type": "flatiron",
  "should_override_redirect": false,
  "cors_relay_required": false,
  "override_redirect": "",
  "authorization_endpoint": "https://accounts.flatiron.com/connect/authorize",
  "token_endpoint": "https://accounts.flatiron.com/connect/token",
  "url": "https://fhir.prod.flatiron.io/fhir",
  "client_id": "xxx",
  "redirect_uri": "https://lighthouse.fastenhealth.com/sandbox/callback/flatiron",
  "grant_types_supported": [
    "authorization_code"
  ],
  "response_types_supported": [
    "code"
  ],
  "response_modes_supported": [
    "query"
  ],
  "aud": "https://fhir.prod.flatiron.io/fhir",
  "scopes_supported": [
    "fhirUser",
    "openid",
    "patient/Patient.read"
  ],
  "confidential": true,
  "confidential_endpoint": "22d713f7-c8e5-4e5d-98ea-9cdbe9cfe3fb",
  "pkce": false,
  "code_challenge_methods_supported": [],
  "issuer": "https://fhir.prod.flatiron.io/fhir"
}
AnalogJ commented 5 months ago

Patient ID for querying is generated by joining the pp.patient_id with the pp.group_id using a . and replacing all _ with --

eg. "pp.patient_id": "PD_05W6BGN90Z1BREQ2PD73", "pp.group_id": "GH_Cz638211629_5",

becomes

PD--05W6BGN90Z1BREQ2PD73.GH--Cz638211629--5

Patient/PD--05W6BGN90Z1BREQ2PD73.GH--Cz638211629--5