FHIR © HL7.org  |  FHIRsmith 4.0.1  |  Server Home  |  XIG Home  |  XIG Stats  | 

FHIR IG analytics

Packagehl7.fhir.uv.bulkdata
Resource TypeOperationDefinition
IdOperationDefinition-bulk-submit.json
FHIR VersionR4
Sourcehttps://build.fhir.org/ig/HL7/bulk-data/OperationDefinition-bulk-submit.html
URLhttp://hl7.org/fhir/uv/bulkdata/OperationDefinition/bulk-submit
Version4.0.0-ballot
Statusactive
Date2025-01-27
NameBulkSubmit
TitleFHIR Bulk Data Submit
Realmuv
Authorityhl7
DescriptionFHIR Operation through which an authenticated and authorized Data Provider submits Bulk FHIR Data to a Data Consumer and receives status information regarding the Data Consumer's receipt and processing of the data. The Data Provider provides one or more manifest URLs pointing to pre-coordinated FHIR data sets, along with metadata needed for the Data Consumer to retrieve and process the files.
Typefalse
Kindoperation

Resources that use this resource

No resources found


Resources that this resource uses

No resources found


Narrative

Note: links and images are rebased to the (stated) source

Generated Narrative: OperationDefinition bulk-submit

URL: [base]/$bulk-submit

Parameters

UseNameScopeCardinalityTypeBindingDocumentation
INsubmitter1..1Identifier

The submitter SHALL match a system and code specified by the Data Consumer (coordinated out-of-band or in an implementation guide specific to a use case).

INsubmissionId1..1string

The value SHALL be unique for the submitter.

INsubmissionStatus0..1CodingSubmission Status Value Set (Required)

System of http://hl7.org/fhir/event-status, code of in-progress (default if parameter is omitted), completed or stopped. Once a request has been submitted with a submissionStatus of stopped or completed, additional requests SHALL NOT be submitted for that submitter and submissionId combination. At least one of the submissionStatus and manifestUrl parameters SHALL be populated.

INmanifestUrl0..1url

Url pointing to a Bulk Export Manifest with a pre-coordinated FHIR data set. Files in multiple submitted manifests with the same submitter and submissionId SHALL be treated by the Data Consumer as if they were submitted in a single manifest. This parameter MAY be omitted when the operation is being called to set the submissionStatus to completed or stopped. The value SHALL be unique for all manifests that share a submitter and submissionId combination. At least one of the submissionStatus and manifestUrl parameters SHALL be populated. When this parameter is populated, the fhirBaseUrl parameter SHALL also be populated.

INreplacesManifestUrl0..1url

The url of a previously submitted manifest that has the same submissionId and submitter as this request. When provided, Data Consumer SHALL replace the data in the referenced manifest with the one in the current request. If the url is invalid or the Data Consumer is unable to replace the data, it SHOULD respond to the request with an OperationOutcome describing the error.

INoutputFormat0..1string

The format for the Bulk Data files in the manifest. The MIME-type MAY include a MIME-type parameter of fhirVersion as described in the FHIR specification to indicate which version of FHIR the resources in the Bulk Data files are based on. When omitted, defaults to application/fhir+ndjson (Newline Delimited JSON) with a version of FHIR determined by the Data Consumer. All of the resources in a submission SHALL use the same version of FHIR.

INfhirBaseUrl0..1url

Base url to be used by the Data Consumer when resolving relative references in the submitted resources. When the manifestUrl parameter is populated, this parameter SHALL be populated.

INfileRequestHeader0..*

HTTP headers that the Data Consumer SHOULD use when requesting a data file from the Data Provider.

INfileRequestHeader.headerName1..1string
INfileRequestHeader.headerValue1..1string
INoauthMetadataUrl0..*url

Location that a Data Consumer can use to obtain the information needed to retrieve files protected using OAuth 2.0. The url SHALL be the path to a FHIR Authorization Endpoint and Capabilities Discovery file or another OAuth 2.0 Protected Resource Metadata file that is registered in the IANA Well-Known URIs Registry.

INfileEncryptionKey0..1

Encryption key information for the Data Consumer to decrypt retrieved data files from the Data Provider.

INfileEncryptionKey.coding0..1Coding

If omitted, defaults to a system of http://hl7.org/fhir/uv/bulkdata/ValueSet/file-encryption-type and code of jwe.

INfileEncryptionKey.value1..1string

For the system of file-encryption-type and code of jwe, populate with the JSON Web Encryption structure to deliver a Content Encryption Key for the Data Consumer to decrypt retrieved data files from the Data Provider.

INmetadata0..*

Child parameters can be added under this parameter to pass pre-coordinated data relevant to the submission from the Data Provider to the Data Consumer. Each child parameter name SHALL be an absolute URL. Specific child parameters are defined in implementation guides for particular use cases.

INmetadata.parameterUrl1..1uri

An absolute URL identifying this metadata parameter.

INmetadata.parameterValue1..1string

The value for this metadata parameter.

INimport0..*

Child parameters MAY be added under this parameter to pass pre-coordinated options relevant to how the data will be processed from the Data Provider to the Data Consumer. For example, a Data Consumer might allow the Data Provider to specify whether or not existing data should be replaced with the data in the submission. Each child parameter name SHALL be an absolute URL. Specific child parameters are defined in implementation guides for particular use cases.

INimport.parameterUrl1..1uri

An absolute URL identifying this import parameter.

INimport.parameterValue1..1string

The value for this import parameter.


Source1

{
  "resourceType": "OperationDefinition",
  "id": "bulk-submit",
  "text": {
    "status": "generated",
    "div": "<!-- snip (see above) -->"
  },
  "extension": [
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
      "valueInteger": 2
    },
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
      "valueCode": "fhir"
    },
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
      "valueCode": "trial-use",
      "_valueCode": {
        "extension": [
          {
            "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
            "valueCanonical": "http://hl7.org/fhir/uv/bulkdata/ImplementationGuide/hl7.fhir.uv.bulkdata"
          }
        ]
      }
    }
  ],
  "url": "http://hl7.org/fhir/uv/bulkdata/OperationDefinition/bulk-submit",
  "version": "4.0.0-ballot",
  "name": "BulkSubmit",
  "title": "FHIR Bulk Data Submit",
  "status": "active",
  "kind": "operation",
  "date": "2025-01-27",
  "publisher": "HL7 International / FHIR Infrastructure",
  "contact": [
    {
      "name": "HL7 International / FHIR Infrastructure",
      "telecom": [
        {
          "system": "url",
          "value": "http://www.hl7.org/Special/committees/fiwg"
        },
        {
          "system": "email",
          "value": "fhir@lists.HL7.org"
        }
      ]
    }
  ],
  "description": "FHIR Operation through which an authenticated and authorized Data Provider submits Bulk FHIR Data to a Data Consumer and receives status information regarding the Data Consumer's receipt and processing of the data. The Data Provider provides one or more manifest URLs pointing to pre-coordinated FHIR data sets, along with metadata needed for the Data Consumer to retrieve and process the files.",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code": "001"
        }
      ]
    }
  ],
  "affectsState": true,
  "code": "bulk-submit",
  "system": true,
  "type": false,
  "instance": false,
  "parameter": [
    {
      "name": "submitter",
      "use": "in",
      "min": 1,
      "max": "1",
      "documentation": "The submitter SHALL match a system and code specified by the Data Consumer (coordinated out-of-band or in an implementation guide specific to a use case).",
      "type": "Identifier"
    },
    {
      "name": "submissionId",
      "use": "in",
      "min": 1,
      "max": "1",
      "documentation": "The value SHALL be unique for the `submitter`.",
      "type": "string"
    },
    {
      "name": "submissionStatus",
      "use": "in",
      "min": 0,
      "max": "1",
      "documentation": "System of `http://hl7.org/fhir/event-status`, code of `in-progress` (default if parameter is omitted), `completed` or `stopped`. Once a request has been submitted with a `submissionStatus` of `stopped` or `completed`, additional requests SHALL NOT be submitted for that `submitter` and `submissionId` combination. At least one of the `submissionStatus` and `manifestUrl` parameters SHALL be populated.",
      "type": "Coding",
      "binding": {
        "strength": "required",
        "valueSet": "http://hl7.org/fhir/uv/bulkdata/ValueSet/submission-status"
      }
    },
    {
      "name": "manifestUrl",
      "use": "in",
      "min": 0,
      "max": "1",
      "documentation": "Url pointing to a [Bulk Export Manifest](https://build.fhir.org/ig/HL7/bulk-data/export.html#response---output-manifest) with a pre-coordinated FHIR data set. Files in multiple submitted manifests with the same `submitter` and `submissionId` SHALL be treated by the Data Consumer as if they were submitted in a single manifest. This parameter MAY be omitted when the operation is being called to set the submissionStatus to `completed` or `stopped`. The value SHALL be unique for all manifests that share a `submitter` and `submissionId` combination. At least one of the `submissionStatus` and `manifestUrl` parameters SHALL be populated. When this parameter is populated, the `fhirBaseUrl` parameter SHALL also be populated.",
      "type": "url"
    },
    {
      "name": "replacesManifestUrl",
      "use": "in",
      "min": 0,
      "max": "1",
      "documentation": "The url of a previously submitted manifest that has the same `submissionId` and `submitter` as this request. When provided, Data Consumer SHALL replace the data in the referenced manifest with the one in the current request. If the url is invalid or the Data Consumer is unable to replace the data, it SHOULD respond to the request with an OperationOutcome describing the error.",
      "type": "url"
    },
    {
      "name": "outputFormat",
      "use": "in",
      "min": 0,
      "max": "1",
      "documentation": "The format for the Bulk Data files in the manifest. The MIME-type MAY include a MIME-type parameter of `fhirVersion` as described in the [FHIR specification](https://hl7.org/fhir/http.html#version-parameter) to indicate which version of FHIR the resources in the Bulk Data files are based on. When omitted, defaults to `application/fhir+ndjson` (Newline Delimited JSON) with a version of FHIR determined by the Data Consumer. All of the resources in a submission SHALL use the same version of FHIR.",
      "type": "string"
    },
    {
      "name": "fhirBaseUrl",
      "use": "in",
      "min": 0,
      "max": "1",
      "documentation": "Base url to be used by the Data Consumer when resolving relative references in the submitted resources. When the `manifestUrl` parameter is populated, this parameter SHALL be populated.",
      "type": "url"
    },
    {
      "name": "fileRequestHeader",
      "use": "in",
      "min": 0,
      "max": "*",
      "documentation": "HTTP headers that the Data Consumer SHOULD use when requesting a data file from the Data Provider.",
      "part": [
        {
          "name": "headerName",
          "use": "in",
          "min": 1,
          "max": "1",
          "type": "string"
        },
        {
          "name": "headerValue",
          "use": "in",
          "min": 1,
          "max": "1",
          "type": "string"
        }
      ]
    },
    {
      "name": "oauthMetadataUrl",
      "use": "in",
      "min": 0,
      "max": "*",
      "documentation": "Location that a Data Consumer can use to obtain the information needed to retrieve files protected using OAuth 2.0. The url SHALL be the path to a [FHIR Authorization Endpoint and Capabilities Discovery file](https://hl7.org/fhir/smart-app-launch/conformance.html#using-well-known) or another [OAuth 2.0 Protected Resource Metadata file](https://datatracker.ietf.org/doc/rfc9728/) that is registered in the [IANA Well-Known URIs Registry](https://www.iana.org/assignments/well-known-uris/well-known-uris.xhtml).",
      "type": "url"
    },
    {
      "name": "fileEncryptionKey",
      "use": "in",
      "min": 0,
      "max": "1",
      "documentation": "Encryption key information for the Data Consumer to decrypt retrieved data files from the Data Provider.",
      "part": [
        {
          "name": "coding",
          "use": "in",
          "min": 0,
          "max": "1",
          "documentation": "If omitted, defaults to a system of `http://hl7.org/fhir/uv/bulkdata/ValueSet/file-encryption-type` and code of `jwe`.",
          "type": "Coding"
        },
        {
          "name": "value",
          "use": "in",
          "min": 1,
          "max": "1",
          "documentation": "For the system of `file-encryption-type` and code of `jwe`, populate with the JSON Web Encryption structure to deliver a Content Encryption Key for the Data Consumer to decrypt retrieved data files from the Data Provider.",
          "type": "string"
        }
      ]
    },
    {
      "name": "metadata",
      "use": "in",
      "min": 0,
      "max": "*",
      "documentation": "Child parameters can be added under this parameter to pass pre-coordinated data relevant to the submission from the Data Provider to the Data Consumer. Each child parameter name SHALL be an absolute URL. Specific child parameters are defined in implementation guides for particular use cases.",
      "part": [
        {
          "name": "parameterUrl",
          "use": "in",
          "min": 1,
          "max": "1",
          "documentation": "An absolute URL identifying this metadata parameter.",
          "type": "uri"
        },
        {
          "name": "parameterValue",
          "use": "in",
          "min": 1,
          "max": "1",
          "documentation": "The value for this metadata parameter.",
          "type": "string"
        }
      ]
    },
    {
      "name": "import",
      "use": "in",
      "min": 0,
      "max": "*",
      "documentation": "Child parameters MAY be added under this parameter to pass pre-coordinated options relevant to how the data will be processed from the Data Provider to the Data Consumer. For example, a Data Consumer might allow the Data Provider to specify whether or not existing data should be replaced with the data in the submission. Each child parameter name SHALL be an absolute URL. Specific child parameters are defined in implementation guides for particular use cases.",
      "part": [
        {
          "name": "parameterUrl",
          "use": "in",
          "min": 1,
          "max": "1",
          "documentation": "An absolute URL identifying this import parameter.",
          "type": "uri"
        },
        {
          "name": "parameterValue",
          "use": "in",
          "min": 1,
          "max": "1",
          "documentation": "The value for this import parameter.",
          "type": "string"
        }
      ]
    }
  ]
}