BinaryCreate method

Future<HttpBody> BinaryCreate(
  1. HttpBody request,
  2. String parent, {
  3. String? $fields,
})

Creates a FHIR Binary resource.

This method can be used to create a Binary resource either by using one of the accepted FHIR JSON content types, or as a raw data stream. If a resource is created with this method using the FHIR content type this method's behavior is the same as [fhir.create](https://cloud.google.com/healthcare-api/docs/reference/rest/v1/projects.locations.datasets.fhirStores.fhir/create). If a resource type other than Binary is used in the request it's treated in the same way as non-FHIR data (e.g., images, zip archives, pdf files, documents). When a non-FHIR content type is used in the request, a Binary resource will be generated, and the uploaded data will be stored in the content field (DSTU2 and STU3), or the data field (R4). The Binary resource's contentType will be filled in using the value of the Content-Type header, and the securityContext field (not present in DSTU2) will be populated from the X-Security-Context header if it exists. At this time securityContext has no special behavior in the Cloud Healthcare API. Note: the limit on data ingested through this method is 1 GB. For best performance, use a non-FHIR data type instead of wrapping the data in a Binary resource. Some of the Healthcare API features, such as exporting to BigQuery or Pub/Sub notifications with full resource content, do not support Binary resources that are larger than 10 MB. In these cases the resource's data field will be omitted. Instead, the "http://hl7.org/fhir/StructureDefinition/data-absent-reason" extension will be present to indicate that including the data is unsupported. On success, an empty 201 Created response is returned. The newly created resource's ID and version are returned in the Location header. Using Prefer: representation=resource is not allowed for this method. The definition of the Binary REST API can be found at https://hl7.org/fhir/binary.html#rest.

request - The metadata request object.

Request parameters:

parent - Required. The name of the FHIR store this resource belongs to. Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+/datasets/\[^/\]+/fhirStores/\[^/\]+$.

$fields - Selector specifying which fields to include in a partial response.

Completes with a HttpBody.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<HttpBody> BinaryCreate(
  HttpBody request,
  core.String parent, {
  core.String? $fields,
}) async {
  final body_ = convert.json.encode(request);
  final queryParams_ = <core.String, core.List<core.String>>{
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/fhir/Binary';

  final response_ = await _requester.request(
    url_,
    'POST',
    body: body_,
    queryParams: queryParams_,
  );
  return HttpBody.fromJson(response_ as core.Map<core.String, core.dynamic>);
}