PatientEverything method

Future<HttpBody> PatientEverything(
  1. String name, {
  2. int? P_count,
  3. String? P_pageToken,
  4. String? P_since,
  5. String? P_type,
  6. String? end,
  7. String? start,
  8. String? $fields,
})

Retrieves a Patient resource and resources related to that patient.

Implements the FHIR extended operation Patient-everything (DSTU2, STU3, R4). On success, the response body contains a JSON-encoded representation of a Bundle resource of type searchset, containing the results of the operation. Errors generated by the FHIR store contain a JSON-encoded OperationOutcome resource describing the reason for the error. If the request cannot be mapped to a valid API method on a FHIR store, a generic GCP error might be returned instead. The resources in scope for the response are: * The patient resource itself. * All the resources directly referenced by the patient resource. * Resources directly referencing the patient resource that meet the inclusion criteria. The inclusion criteria are based on the membership rules in the patient compartment definition (DSTU2, STU3, R4), which details the eligible resource types and referencing search parameters. For samples that show how to call Patient-everything, see Getting all patient compartment resources.

Request parameters:

name - Required. Name of the Patient resource for which the information is required. Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+/datasets/\[^/\]+/fhirStores/\[^/\]+/fhir/Patient/\[^/\]+$.

P_count - Optional. Maximum number of resources in a page. If not specified, 100 is used. May not be larger than 1000.

P_pageToken - Used to retrieve the next or previous page of results when using pagination. Set _page_token to the value of _page_token set in next or previous page links' url. Next and previous page are returned in the response bundle's links field, where link.relation is "previous" or "next". Omit _page_token if no previous request has been made.

P_since - Optional. If provided, only resources updated after this time are returned. The time uses the format YYYY-MM-DDThh:mm:ss.sss+zz:zz. For example, 2015-02-07T13:28:17.239+02:00 or 2017-01-01T00:00:00Z. The time must be specified to the second and include a time zone.

P_type - Optional. String of comma-delimited FHIR resource types. If provided, only resources of the specified resource type(s) are returned. Specifying multiple _type parameters isn't supported. For example, the result of _type=Observation&_type=Encounter is undefined. Use _type=Observation,Encounter instead.

end - Optional. The response includes records prior to the end date. The date uses the format YYYY-MM-DD. If no end date is provided, all records subsequent to the start date are in scope.

start - Optional. The response includes records subsequent to the start date. The date uses the format YYYY-MM-DD. If no start date is provided, all records prior to the end date are in scope.

$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> PatientEverything(
  core.String name, {
  core.int? P_count,
  core.String? P_pageToken,
  core.String? P_since,
  core.String? P_type,
  core.String? end,
  core.String? start,
  core.String? $fields,
}) async {
  final queryParams_ = <core.String, core.List<core.String>>{
    if (P_count != null) '_count': ['${P_count}'],
    if (P_pageToken != null) '_page_token': [P_pageToken],
    if (P_since != null) '_since': [P_since],
    if (P_type != null) '_type': [P_type],
    if (end != null) 'end': [end],
    if (start != null) 'start': [start],
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v1/' + core.Uri.encodeFull('$name') + '/\$everything';

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