{"openapi":"3.0.1","info":{"title":"Provider Access API","description":"API FHIR de datos masivos ($export) conforme a CMS-0057-F para que los proveedores accedan a datos poblacionales de pacientes. Compatible con autenticación SMART Backend Services.","version":"v1"},"paths":{"/health":{"get":{"tags":["Health"],"summary":"Reports that the app is serving, which image is serving it, and whether\r\nthe cache refused any key prefix this service uses. The Redis fields sit\r\nbeside status rather than changing it; the deploy gate reads them\r\nseparately. Prefix names only: this route is anonymous.","parameters":[{"name":"api-version","in":"query","schema":{"type":"string"}},{"name":"x-api-version","in":"header","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HealthStatus"}}}}}}},"/Group":{"get":{"tags":["ProviderAccess"],"summary":"FHIR search on Group: the export groups this caller may use (QA-22). The\r\nlisting is where a provider starts a bulk export, so it runs the same\r\ngates the export runs, short of consent, and another provider's group is\r\nleft out of the result rather than refused.","parameters":[{"name":"_id","in":"query","schema":{"type":"string"}},{"name":"api-version","in":"query","schema":{"type":"string"}},{"name":"x-api-version","in":"header","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/GroupSearchBundle"}}}},"403":{"description":"Forbidden","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/OperationOutcome"}}}},"503":{"description":"Service Unavailable","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/OperationOutcome"}}}}}}},"/Group/{groupId}":{"get":{"tags":["ProviderAccess"],"summary":"FHIR read on Group. Answers like the export does: 404 for an id that\r\nnames no group, 403 for a group this client is not admitted to.","parameters":[{"name":"groupId","in":"path","required":true,"schema":{"type":"string"}},{"name":"api-version","in":"query","schema":{"type":"string"}},{"name":"x-api-version","in":"header","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/FhirGroup"}}}},"403":{"description":"Forbidden","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/OperationOutcome"}}}},"404":{"description":"Not Found","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/OperationOutcome"}}}},"503":{"description":"Service Unavailable","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/OperationOutcome"}}}}}}},"/Group/{groupId}/$export":{"get":{"tags":["ProviderAccess"],"summary":"Provider Access Bulk Data Export","parameters":[{"name":"groupId","in":"path","required":true,"schema":{"type":"string"}},{"name":"_type","in":"query","schema":{"type":"string"}},{"name":"_since","in":"query","schema":{"type":"string"}},{"name":"api-version","in":"query","schema":{"type":"string"}},{"name":"x-api-version","in":"header","schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted"},"400":{"description":"Bad Request","content":{"text/plain":{"schema":{"type":"string"}}}},"403":{"description":"Forbidden","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/OperationOutcome"}}}},"404":{"description":"Not Found","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/OperationOutcome"}}}},"406":{"description":"Not Acceptable","content":{"text/plain":{"schema":{"type":"string"}}}},"503":{"description":"Service Unavailable","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/OperationOutcome"}}}}}}},"/jobs/{jobId}":{"get":{"tags":["ProviderAccess"],"parameters":[{"name":"jobId","in":"path","required":true,"schema":{"type":"string"}},{"name":"api-version","in":"query","schema":{"type":"string"}},{"name":"x-api-version","in":"header","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExportStatusManifest"}}}},"202":{"description":"Accepted"},"404":{"description":"Not Found","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"text/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}}}},"delete":{"tags":["ProviderAccess"],"summary":"Cancel an export job","parameters":[{"name":"jobId","in":"path","required":true,"schema":{"type":"string"}},{"name":"api-version","in":"query","schema":{"type":"string"}},{"name":"x-api-version","in":"header","schema":{"type":"string"}}],"responses":{"202":{"description":"Accepted"},"404":{"description":"Not Found","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"text/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}},"409":{"description":"Conflict","content":{"text/plain":{"schema":{"type":"string"}}}}}}},"/jobs/{jobId}/files/{fileId}":{"get":{"tags":["ProviderAccess"],"parameters":[{"name":"jobId","in":"path","required":true,"schema":{"type":"string"}},{"name":"fileId","in":"path","required":true,"schema":{"type":"string"}},{"name":"api-version","in":"query","schema":{"type":"string"}},{"name":"x-api-version","in":"header","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/fhir+ndjson":{"schema":{"type":"string"}}}},"404":{"description":"Not Found","content":{"text/plain":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"application/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}},"text/json":{"schema":{"$ref":"#/components/schemas/ProblemDetails"}}}}}}},"/metadata":{"get":{"tags":["ProviderAccess"],"summary":"FHIR CapabilityStatement (Bulk Data)","parameters":[{"name":"api-version","in":"query","schema":{"type":"string"}},{"name":"x-api-version","in":"header","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/fhir+json":{"schema":{"$ref":"#/components/schemas/CapabilityStatementSummary"}}}}}}},"/.well-known/smart-configuration":{"get":{"tags":["SmartConfiguration"],"parameters":[{"name":"api-version","in":"query","schema":{"type":"string"}},{"name":"x-api-version","in":"header","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SmartConfiguration"}}}}}}},"/openapi.json":{"get":{"tags":["Discovery"],"summary":"This OpenAPI document","description":"The OpenAPI 3 description of this API. Anonymous and read-only.","operationId":"get-openapi","responses":{"200":{"description":"The OpenAPI document (application/json).","content":{"application/json":{"schema":{"type":"object"}}}}},"security":[{}]}}},"components":{"schemas":{"BundleEntrySearch":{"type":"object","properties":{"mode":{"type":"string","nullable":true}},"additionalProperties":false},"BundleLink":{"type":"object","properties":{"relation":{"type":"string","nullable":true},"url":{"type":"string","nullable":true}},"additionalProperties":false},"CapabilityStatementImplementation":{"type":"object","properties":{"description":{"type":"string","nullable":true},"url":{"type":"string","nullable":true}},"additionalProperties":false},"CapabilityStatementSummary":{"type":"object","properties":{"resourceType":{"type":"string","nullable":true},"id":{"type":"string","nullable":true},"url":{"type":"string","nullable":true},"version":{"type":"string","nullable":true},"name":{"type":"string","nullable":true},"status":{"type":"string","nullable":true},"kind":{"type":"string","nullable":true},"instantiates":{"type":"array","items":{"type":"string"},"nullable":true},"implementation":{"$ref":"#/components/schemas/CapabilityStatementImplementation"},"fhirVersion":{"type":"string","nullable":true},"format":{"type":"array","items":{"type":"string"},"nullable":true},"rest":{"type":"array","items":{},"nullable":true}},"additionalProperties":false,"description":"Schema only: the top-level elements of the CapabilityStatement GET /metadata\r\nreturns. The statement itself is built in the controller; this declares\r\nwhat a client can rely on without restating every nested element."},"ExportManifestFile":{"type":"object","properties":{"type":{"type":"string","nullable":true},"url":{"type":"string","nullable":true}},"additionalProperties":false},"ExportStatusManifest":{"type":"object","properties":{"transactionTime":{"type":"string","nullable":true},"request":{"type":"string","nullable":true},"output":{"type":"array","items":{"$ref":"#/components/schemas/ExportManifestFile"},"nullable":true},"error":{"type":"array","items":{"$ref":"#/components/schemas/ExportManifestFile"},"nullable":true}},"additionalProperties":false,"description":"The Bulk Data complete-status manifest returned by GET /jobs/{jobId}."},"FhirGroup":{"type":"object","properties":{"resourceType":{"type":"string","nullable":true},"id":{"type":"string","nullable":true},"active":{"type":"boolean"},"type":{"type":"string","nullable":true},"actual":{"type":"boolean"},"name":{"type":"string","nullable":true}},"additionalProperties":false,"description":"A FHIR R4 Group naming one Provider Access export group. It carries no\r\nmember: the configured ids are member numbers rather than Patient resource\r\nids, and listing them would disclose members who opted out before consent\r\nscreening has run. The members reach a provider through $export, screened."},"GroupBundleEntry":{"type":"object","properties":{"fullUrl":{"type":"string","nullable":true},"resource":{"$ref":"#/components/schemas/FhirGroup"},"search":{"$ref":"#/components/schemas/BundleEntrySearch"}},"additionalProperties":false},"GroupSearchBundle":{"type":"object","properties":{"resourceType":{"type":"string","nullable":true},"type":{"type":"string","nullable":true},"total":{"type":"integer","format":"int32"},"link":{"type":"array","items":{"$ref":"#/components/schemas/BundleLink"},"nullable":true},"entry":{"type":"array","items":{"$ref":"#/components/schemas/GroupBundleEntry"},"nullable":true}},"additionalProperties":false,"description":"A FHIR R4 searchset Bundle of Group resources."},"HealthStatus":{"type":"object","properties":{"status":{"type":"string","nullable":true},"gitSha":{"type":"string","nullable":true},"buildNumber":{"type":"string","nullable":true},"builtAt":{"type":"string","nullable":true},"redisKeyspaceProbe":{"type":"string","nullable":true},"redisKeyspacesRefused":{"type":"array","items":{"type":"string"},"nullable":true}},"additionalProperties":false,"description":"The /health body."},"OperationOutcome":{"type":"object","properties":{"resourceType":{"type":"string","nullable":true},"issue":{"type":"array","items":{"$ref":"#/components/schemas/OperationOutcomeIssue"},"nullable":true}},"additionalProperties":false,"description":"A FHIR R4 OperationOutcome, the body of every refusal this API writes."},"OperationOutcomeIssue":{"type":"object","properties":{"severity":{"type":"string","nullable":true},"code":{"type":"string","nullable":true},"diagnostics":{"type":"string","nullable":true}},"additionalProperties":false},"ProblemDetails":{"type":"object","properties":{"type":{"type":"string","nullable":true},"title":{"type":"string","nullable":true},"status":{"type":"integer","format":"int32","nullable":true},"detail":{"type":"string","nullable":true},"instance":{"type":"string","nullable":true}},"additionalProperties":{}},"SmartConfiguration":{"type":"object","properties":{"issuer":{"type":"string","nullable":true},"jwks_uri":{"type":"string","nullable":true},"authorization_endpoint":{"type":"string","nullable":true},"token_endpoint":{"type":"string","nullable":true},"token_endpoint_auth_methods_supported":{"type":"array","items":{"type":"string"},"nullable":true},"token_endpoint_auth_signing_alg_values_supported":{"type":"array","items":{"type":"string"},"nullable":true},"grant_types_supported":{"type":"array","items":{"type":"string"},"nullable":true},"scopes_supported":{"type":"array","items":{"type":"string"},"nullable":true},"capabilities":{"type":"array","items":{"type":"string"},"nullable":true}},"additionalProperties":false,"description":"The SMART configuration document, in the snake_case SMART names."}},"securitySchemes":{"Bearer":{"type":"http","description":"Paste a JWT token.","scheme":"Bearer","bearerFormat":"JWT"},"oauth2":{"type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"https://apim-fmcom-interoppatientaccess-prod-001.azure-api.net/smart-auth/api/token","scopes":{"provider/Export.read":"Bulk export of attributed members"}}}}}},"security":[{"Bearer":[]},{"oauth2":["provider/Export.read"]}],"servers":[{"url":"https://apim-fmcom-interoppatientaccess-prod-001.azure-api.net/provider-access"}]}