openapi: 3.0.3 info: title: SMART Health IT Sandbox FHIR APIs Bulk Data API description: Public, free sandbox APIs operated by SMART Health IT (Computational Health Informatics Program, Boston Children's Hospital / Harvard Medical School) for building and testing SMART on FHIR apps. Three surfaces are described here. (1) The open FHIR R4 sandbox at https://r4.smarthealthit.org - synthetic patient records served over plain FHIR REST with no authentication (DSTU2 and STU3 variants exist at r2/r3.smarthealthit.org). (2) The SMART App Launcher's protected FHIR R4 proxy at https://launch.smarthealthit.org/v/r4/fhir, which requires an OAuth 2.0 access token obtained through the HL7 SMART App Launch flow at /v/r4/auth/authorize and /v/r4/auth/token (no client registration needed). (3) The reference Bulk Data server at https://bulk-data.smarthealthit.org/fhir, which implements FHIR Bulk Data $export with SMART Backend Services JWT authentication. All data is synthetic; these servers are for development and testing, never real PHI. version: '1.0' contact: name: SMART Health IT url: https://smarthealthit.org license: name: Apache 2.0 url: https://github.com/smart-on-fhir/smart-launcher-v2/blob/main/LICENSE servers: - url: https://r4.smarthealthit.org description: Open FHIR R4 sandbox (no authentication required) - url: https://launch.smarthealthit.org/v/r4/fhir description: SMART App Launcher protected FHIR R4 proxy (SMART App Launch OAuth 2.0) - url: https://bulk-data.smarthealthit.org/fhir description: Reference Bulk Data server (SMART Backend Services authentication) security: - smartOnFhir: [] - {} tags: - name: Bulk Data description: FHIR Bulk Data $export operations on the reference Bulk Data server. paths: /$export: servers: - url: https://bulk-data.smarthealthit.org/fhir description: Reference Bulk Data server get: operationId: bulkSystemExport tags: - Bulk Data summary: Start a system-level bulk export (Bulk Data server only) description: Kicks off an asynchronous export of all resources on the reference Bulk Data server (https://bulk-data.smarthealthit.org/fhir). Requires the Prefer respond-async header and a SMART Backend Services access token. Responds 202 with a Content-Location status URL to poll (honor Retry-After); when complete, the status endpoint returns a manifest of NDJSON file URLs to download. parameters: - $ref: '#/components/parameters/OutputFormat' - $ref: '#/components/parameters/Type' - $ref: '#/components/parameters/Since' responses: '202': description: Export accepted; poll the Content-Location URL for status. headers: Content-Location: description: Absolute URL of the export status endpoint. schema: type: string '401': $ref: '#/components/responses/Unauthorized' /Patient/$export: servers: - url: https://bulk-data.smarthealthit.org/fhir description: Reference Bulk Data server get: operationId: bulkPatientExport tags: - Bulk Data summary: Start a patient-level bulk export (Bulk Data server only) description: Kicks off an asynchronous export of all data for all patients on the reference Bulk Data server, following the same async-request pattern as the system-level export. parameters: - $ref: '#/components/parameters/OutputFormat' - $ref: '#/components/parameters/Type' - $ref: '#/components/parameters/Since' responses: '202': description: Export accepted; poll the Content-Location URL for status. headers: Content-Location: schema: type: string '401': $ref: '#/components/responses/Unauthorized' /Group/{id}/$export: servers: - url: https://bulk-data.smarthealthit.org/fhir description: Reference Bulk Data server get: operationId: bulkGroupExport tags: - Bulk Data summary: Start a group-level bulk export (Bulk Data server only) description: Kicks off an asynchronous export of all data for the patients in a Group on the reference Bulk Data server. parameters: - $ref: '#/components/parameters/ResourceId' - $ref: '#/components/parameters/OutputFormat' - $ref: '#/components/parameters/Type' - $ref: '#/components/parameters/Since' responses: '202': description: Export accepted; poll the Content-Location URL for status. headers: Content-Location: schema: type: string '401': $ref: '#/components/responses/Unauthorized' components: parameters: ResourceId: name: id in: path required: true description: The logical id of the resource. schema: type: string Since: name: _since in: query description: Only include resources modified after this instant. schema: type: string format: date-time Type: name: _type in: query description: Comma-separated FHIR resource types to include in the export. schema: type: string OutputFormat: name: _outputFormat in: query description: Requested bulk output format; defaults to application/fhir+ndjson. schema: type: string responses: Unauthorized: description: Missing or invalid access token (protected servers only). content: application/fhir+json: schema: $ref: '#/components/schemas/OperationOutcome' schemas: OperationOutcome: type: object description: A FHIR OperationOutcome describing an error. properties: resourceType: type: string enum: - OperationOutcome issue: type: array items: type: object properties: severity: type: string code: type: string diagnostics: type: string securitySchemes: smartOnFhir: type: oauth2 description: HL7 SMART App Launch OAuth 2.0 profile, used by the launcher's protected FHIR proxy. The open r4.smarthealthit.org sandbox requires no authentication; the Bulk Data server uses SMART Backend Services (client_credentials with a signed JWT assertion). flows: authorizationCode: authorizationUrl: https://launch.smarthealthit.org/v/r4/auth/authorize tokenUrl: https://launch.smarthealthit.org/v/r4/auth/token scopes: openid: OpenID Connect identity. fhirUser: Identity of the launching user as a FHIR resource. launch/patient: Request a patient in context at launch. patient/*.read: Read all resources for the patient in context. user/*.read: Read all resources the user can access. system/*.read: Backend services system-level read access. clientCredentials: tokenUrl: https://launch.smarthealthit.org/v/r4/auth/token scopes: system/*.read: Backend services system-level read access. externalDocs: description: SMART on FHIR developer documentation url: https://docs.smarthealthit.org