HealthLake

Client

class HealthLake.Client

A low-level client representing Amazon HealthLake

Amazon HealthLake is a HIPAA eligibile service that allows customers to store, transform, query, and analyze their FHIR-formatted data in a consistent fashion in the cloud.

client = session.create_client('healthlake')

These are the available methods:

can_paginate(operation_name)

Check if an operation can be paginated.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Returns
True if the operation can be paginated, False otherwise.
create_fhir_datastore(**kwargs)

Creates a Data Store that can ingest and export FHIR formatted data.

See also: AWS API Documentation

Request Syntax

response = client.create_fhir_datastore(
    DatastoreName='string',
    DatastoreTypeVersion='R4',
    PreloadDataConfig={
        'PreloadDataType': 'SYNTHEA'
    },
    ClientToken='string'
)
Parameters
  • DatastoreName (string) -- The user generated name for the Data Store.
  • DatastoreTypeVersion (string) --

    [REQUIRED]

    The FHIR version of the Data Store. The only supported version is R4.

  • PreloadDataConfig (dict) --

    Optional parameter to preload data upon creation of the Data Store. Currently, the only supported preloaded data is synthetic data generated from Synthea.

    • PreloadDataType (string) -- [REQUIRED]

      The type of preloaded data. Only Synthea preloaded data is supported.

  • ClientToken (string) --

    Optional user provided token used for ensuring idempotency.

    This field is autopopulated if not provided.

Return type

dict

Returns

Response Syntax

{
    'DatastoreId': 'string',
    'DatastoreArn': 'string',
    'DatastoreStatus': 'CREATING'|'ACTIVE'|'DELETING'|'DELETED',
    'DatastoreEndpoint': 'string'
}

Response Structure

  • (dict) --

    • DatastoreId (string) --

      The AWS-generated Data Store id. This id is in the output from the initial Data Store creation call.

    • DatastoreArn (string) --

      The datastore ARN is generated during the creation of the Data Store and can be found in the output from the initial Data Store creation call.

    • DatastoreStatus (string) --

      The status of the FHIR Data Store. Possible statuses are ‘CREATING’, ‘ACTIVE’, ‘DELETING’, ‘DELETED’.

    • DatastoreEndpoint (string) --

      The AWS endpoint for the created Data Store. For preview, only US-east-1 endpoints are supported.

Exceptions

delete_fhir_datastore(**kwargs)

Deletes a Data Store.

See also: AWS API Documentation

Request Syntax

response = client.delete_fhir_datastore(
    DatastoreId='string'
)
Parameters
DatastoreId (string) -- The AWS-generated ID for the Data Store to be deleted.
Return type
dict
Returns
Response Syntax
{
    'DatastoreId': 'string',
    'DatastoreArn': 'string',
    'DatastoreStatus': 'CREATING'|'ACTIVE'|'DELETING'|'DELETED',
    'DatastoreEndpoint': 'string'
}

Response Structure

  • (dict) --
    • DatastoreId (string) --

      The AWS-generated ID for the Data Store to be deleted.

    • DatastoreArn (string) --

      The Amazon Resource Name (ARN) that gives Amazon HealthLake access permission.

    • DatastoreStatus (string) --

      The status of the Data Store that the user has requested to be deleted.

    • DatastoreEndpoint (string) --

      The AWS endpoint for the Data Store the user has requested to be deleted.

Exceptions

describe_fhir_datastore(**kwargs)

Gets the properties associated with the FHIR Data Store, including the Data Store ID, Data Store ARN, Data Store name, Data Store status, created at, Data Store type version, and Data Store endpoint.

See also: AWS API Documentation

Request Syntax

response = client.describe_fhir_datastore(
    DatastoreId='string'
)
Parameters
DatastoreId (string) -- The AWS-generated Data Store id. This is part of the ‘CreateFHIRDatastore’ output.
Return type
dict
Returns
Response Syntax
{
    'DatastoreProperties': {
        'DatastoreId': 'string',
        'DatastoreArn': 'string',
        'DatastoreName': 'string',
        'DatastoreStatus': 'CREATING'|'ACTIVE'|'DELETING'|'DELETED',
        'CreatedAt': datetime(2015, 1, 1),
        'DatastoreTypeVersion': 'R4',
        'DatastoreEndpoint': 'string',
        'PreloadDataConfig': {
            'PreloadDataType': 'SYNTHEA'
        }
    }
}

Response Structure

  • (dict) --
    • DatastoreProperties (dict) --

      All properties associated with a Data Store, including the Data Store ID, Data Store ARN, Data Store name, Data Store status, created at, Data Store type version, and Data Store endpoint.

      • DatastoreId (string) --

        The AWS-generated ID number for the Data Store.

      • DatastoreArn (string) --

        The Amazon Resource Name used in the creation of the Data Store.

      • DatastoreName (string) --

        The user-generated name for the Data Store.

      • DatastoreStatus (string) --

        The status of the Data Store. Possible statuses are 'CREATING', 'ACTIVE', 'DELETING', or 'DELETED'.

      • CreatedAt (datetime) --

        The time that a Data Store was created.

      • DatastoreTypeVersion (string) --

        The FHIR version. Only R4 version data is supported.

      • DatastoreEndpoint (string) --

        The AWS endpoint for the Data Store. Each Data Store will have it's own endpoint with Data Store ID in the endpoint URL.

      • PreloadDataConfig (dict) --

        The preloaded data configuration for the Data Store. Only data preloaded from Synthea is supported.

        • PreloadDataType (string) --

          The type of preloaded data. Only Synthea preloaded data is supported.

Exceptions

describe_fhir_export_job(**kwargs)

Displays the properties of a FHIR export job, including the ID, ARN, name, and the status of the job.

See also: AWS API Documentation

Request Syntax

response = client.describe_fhir_export_job(
    DatastoreId='string',
    JobId='string'
)
Parameters
  • DatastoreId (string) --

    [REQUIRED]

    The AWS generated ID for the Data Store from which files are being exported from for an export job.

  • JobId (string) --

    [REQUIRED]

    The AWS generated ID for an export job.

Return type

dict

Returns

Response Syntax

{
    'ExportJobProperties': {
        'JobId': 'string',
        'JobName': 'string',
        'JobStatus': 'SUBMITTED'|'IN_PROGRESS'|'COMPLETED'|'FAILED',
        'SubmitTime': datetime(2015, 1, 1),
        'EndTime': datetime(2015, 1, 1),
        'DatastoreId': 'string',
        'OutputDataConfig': {
            'S3Uri': 'string'
        },
        'DataAccessRoleArn': 'string',
        'Message': 'string'
    }
}

Response Structure

  • (dict) --

    • ExportJobProperties (dict) --

      Displays the properties of the export job, including the ID, Arn, Name, and the status of the job.

      • JobId (string) --

        The AWS generated ID for an export job.

      • JobName (string) --

        The user generated name for an export job.

      • JobStatus (string) --

        The status of a FHIR export job. Possible statuses are SUBMITTED, IN_PROGRESS, COMPLETED, or FAILED.

      • SubmitTime (datetime) --

        The time an export job was initiated.

      • EndTime (datetime) --

        The time an export job completed.

      • DatastoreId (string) --

        The AWS generated ID for the Data Store from which files are being exported for an export job.

      • OutputDataConfig (dict) --

        The output data configuration that was supplied when the export job was created.

        • S3Uri (string) --

          The S3Uri is the user specified S3 location to which data will be exported from a FHIR Data Store.

      • DataAccessRoleArn (string) --

        The Amazon Resource Name used during the initiation of the job.

      • Message (string) --

        An explanation of any errors that may have occurred during the export job.

Exceptions

describe_fhir_import_job(**kwargs)

Displays the properties of a FHIR import job, including the ID, ARN, name, and the status of the job.

See also: AWS API Documentation

Request Syntax

response = client.describe_fhir_import_job(
    DatastoreId='string',
    JobId='string'
)
Parameters
  • DatastoreId (string) --

    [REQUIRED]

    The AWS-generated ID of the Data Store.

  • JobId (string) --

    [REQUIRED]

    The AWS-generated job ID.

Return type

dict

Returns

Response Syntax

{
    'ImportJobProperties': {
        'JobId': 'string',
        'JobName': 'string',
        'JobStatus': 'SUBMITTED'|'IN_PROGRESS'|'COMPLETED'|'FAILED',
        'SubmitTime': datetime(2015, 1, 1),
        'EndTime': datetime(2015, 1, 1),
        'DatastoreId': 'string',
        'InputDataConfig': {
            'S3Uri': 'string'
        },
        'DataAccessRoleArn': 'string',
        'Message': 'string'
    }
}

Response Structure

  • (dict) --

    • ImportJobProperties (dict) --

      The properties of the Import job request, including the ID, ARN, name, and the status of the job.

      • JobId (string) --

        The AWS-generated id number for the Import job.

      • JobName (string) --

        The user-generated name for an Import job.

      • JobStatus (string) --

        The job status for an Import job. Possible statuses are SUBMITTED, IN_PROGRESS, COMPLETED, FAILED.

      • SubmitTime (datetime) --

        The time that the Import job was submitted for processing.

      • EndTime (datetime) --

        The time that the Import job was completed.

      • DatastoreId (string) --

        The datastore id used when the Import job was created.

      • InputDataConfig (dict) --

        The input data configuration that was supplied when the Import job was created.

        • S3Uri (string) --

          The S3Uri is the user specified S3 location of the FHIR data to be imported into Amazon HealthLake.

      • DataAccessRoleArn (string) --

        The Amazon Resource Name (ARN) that gives Amazon HealthLake access to your input data.

      • Message (string) --

        An explanation of any errors that may have occurred during the FHIR import job.

Exceptions

generate_presigned_url(ClientMethod, Params=None, ExpiresIn=3600, HttpMethod=None)

Generate a presigned url given a client, its method, and arguments

Parameters
  • ClientMethod (string) -- The client method to presign for
  • Params (dict) -- The parameters normally passed to ClientMethod.
  • ExpiresIn (int) -- The number of seconds the presigned url is valid for. By default it expires in an hour (3600 seconds)
  • HttpMethod (string) -- The http method to use on the generated url. By default, the http method is whatever is used in the method's model.
Returns

The presigned url

get_paginator(operation_name)

Create a paginator for an operation.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Raises OperationNotPageableError
Raised if the operation is not pageable. You can use the client.can_paginate method to check if an operation is pageable.
Return type
L{botocore.paginate.Paginator}
Returns
A paginator object.
get_waiter(waiter_name)

Returns an object that can wait for some condition.

Parameters
waiter_name (str) -- The name of the waiter to get. See the waiters section of the service docs for a list of available waiters.
Returns
The specified waiter object.
Return type
botocore.waiter.Waiter
list_fhir_datastores(**kwargs)

Lists all FHIR Data Stores that are in the user’s account, regardless of Data Store status.

See also: AWS API Documentation

Request Syntax

response = client.list_fhir_datastores(
    Filter={
        'DatastoreName': 'string',
        'DatastoreStatus': 'CREATING'|'ACTIVE'|'DELETING'|'DELETED',
        'CreatedBefore': datetime(2015, 1, 1),
        'CreatedAfter': datetime(2015, 1, 1)
    },
    NextToken='string',
    MaxResults=123
)
Parameters
  • Filter (dict) --

    Lists all filters associated with a FHIR Data Store request.

    • DatastoreName (string) --

      Allows the user to filter Data Store results by name.

    • DatastoreStatus (string) --

      Allows the user to filter Data Store results by status.

    • CreatedBefore (datetime) --

      A filter that allows the user to set cutoff dates for records. All Data Stores created before the specified date will be included in the results.

    • CreatedAfter (datetime) --

      A filter that allows the user to set cutoff dates for records. All Data Stores created after the specified date will be included in the results.

  • NextToken (string) -- Fetches the next page of Data Stores when results are paginated.
  • MaxResults (integer) -- The maximum number of Data Stores returned in a single page of a ListFHIRDatastoresRequest call.
Return type

dict

Returns

Response Syntax

{
    'DatastorePropertiesList': [
        {
            'DatastoreId': 'string',
            'DatastoreArn': 'string',
            'DatastoreName': 'string',
            'DatastoreStatus': 'CREATING'|'ACTIVE'|'DELETING'|'DELETED',
            'CreatedAt': datetime(2015, 1, 1),
            'DatastoreTypeVersion': 'R4',
            'DatastoreEndpoint': 'string',
            'PreloadDataConfig': {
                'PreloadDataType': 'SYNTHEA'
            }
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • DatastorePropertiesList (list) --

      All properties associated with the listed Data Stores.

      • (dict) --

        Displays the properties of the Data Store, including the ID, Arn, name, and the status of the Data Store.

        • DatastoreId (string) --

          The AWS-generated ID number for the Data Store.

        • DatastoreArn (string) --

          The Amazon Resource Name used in the creation of the Data Store.

        • DatastoreName (string) --

          The user-generated name for the Data Store.

        • DatastoreStatus (string) --

          The status of the Data Store. Possible statuses are 'CREATING', 'ACTIVE', 'DELETING', or 'DELETED'.

        • CreatedAt (datetime) --

          The time that a Data Store was created.

        • DatastoreTypeVersion (string) --

          The FHIR version. Only R4 version data is supported.

        • DatastoreEndpoint (string) --

          The AWS endpoint for the Data Store. Each Data Store will have it's own endpoint with Data Store ID in the endpoint URL.

        • PreloadDataConfig (dict) --

          The preloaded data configuration for the Data Store. Only data preloaded from Synthea is supported.

          • PreloadDataType (string) --

            The type of preloaded data. Only Synthea preloaded data is supported.

    • NextToken (string) --

      Pagination token that can be used to retrieve the next page of results.

Exceptions

start_fhir_export_job(**kwargs)

Begins a FHIR export job.

See also: AWS API Documentation

Request Syntax

response = client.start_fhir_export_job(
    JobName='string',
    OutputDataConfig={
        'S3Uri': 'string'
    },
    DatastoreId='string',
    DataAccessRoleArn='string',
    ClientToken='string'
)
Parameters
  • JobName (string) -- The user generated name for an export job.
  • OutputDataConfig (dict) --

    [REQUIRED]

    The output data configuration that was supplied when the export job was created.

    • S3Uri (string) --

      The S3Uri is the user specified S3 location to which data will be exported from a FHIR Data Store.

  • DatastoreId (string) --

    [REQUIRED]

    The AWS generated ID for the Data Store from which files are being exported for an export job.

  • DataAccessRoleArn (string) --

    [REQUIRED]

    The Amazon Resource Name used during the initiation of the job.

  • ClientToken (string) --

    [REQUIRED]

    An optional user provided token used for ensuring idempotency.

    This field is autopopulated if not provided.

Return type

dict

Returns

Response Syntax

{
    'JobId': 'string',
    'JobStatus': 'SUBMITTED'|'IN_PROGRESS'|'COMPLETED'|'FAILED',
    'DatastoreId': 'string'
}

Response Structure

  • (dict) --

    • JobId (string) --

      The AWS generated ID for an export job.

    • JobStatus (string) --

      The status of a FHIR export job. Possible statuses are SUBMITTED, IN_PROGRESS, COMPLETED, or FAILED.

    • DatastoreId (string) --

      The AWS generated ID for the Data Store from which files are being exported for an export job.

Exceptions

start_fhir_import_job(**kwargs)

Begins a FHIR Import job.

See also: AWS API Documentation

Request Syntax

response = client.start_fhir_import_job(
    JobName='string',
    InputDataConfig={
        'S3Uri': 'string'
    },
    DatastoreId='string',
    DataAccessRoleArn='string',
    ClientToken='string'
)
Parameters
  • JobName (string) -- The name of the FHIR Import job in the StartFHIRImport job request.
  • InputDataConfig (dict) --

    [REQUIRED]

    The input properties of the FHIR Import job in the StartFHIRImport job request.

    • S3Uri (string) --

      The S3Uri is the user specified S3 location of the FHIR data to be imported into Amazon HealthLake.

  • DatastoreId (string) --

    [REQUIRED]

    The AWS-generated Data Store ID.

  • DataAccessRoleArn (string) --

    [REQUIRED]

    The Amazon Resource Name (ARN) that gives Amazon HealthLake access permission.

  • ClientToken (string) --

    [REQUIRED]

    Optional user provided token used for ensuring idempotency.

    This field is autopopulated if not provided.

Return type

dict

Returns

Response Syntax

{
    'JobId': 'string',
    'JobStatus': 'SUBMITTED'|'IN_PROGRESS'|'COMPLETED'|'FAILED',
    'DatastoreId': 'string'
}

Response Structure

  • (dict) --

    • JobId (string) --

      The AWS-generated job ID.

    • JobStatus (string) --

      The status of an import job.

    • DatastoreId (string) --

      The AWS-generated Data Store ID.

Exceptions

Client Exceptions

Client exceptions are available on a client instance via the exceptions property. For more detailed instructions and examples on the exact usage of client exceptions, see the error handling user guide.

The available client exceptions are:

class HealthLake.Client.exceptions.AccessDeniedException

Access is denied. Your account is not authorized to perform this operation.

Example

try:
  ...
except client.exceptions.AccessDeniedException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'Message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    Access is denied. Your account is not authorized to perform this operation.

    • Message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class HealthLake.Client.exceptions.ConflictException

The Data Store is in a transition state and the user requested action can not be performed.

Example

try:
  ...
except client.exceptions.ConflictException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'Message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    The Data Store is in a transition state and the user requested action can not be performed.

    • Message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class HealthLake.Client.exceptions.InternalServerException

Unknown error occurs in the service.

Example

try:
  ...
except client.exceptions.InternalServerException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'Message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    Unknown error occurs in the service.

    • Message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class HealthLake.Client.exceptions.ResourceNotFoundException

The requested Data Store was not found.

Example

try:
  ...
except client.exceptions.ResourceNotFoundException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'Message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    The requested Data Store was not found.

    • Message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class HealthLake.Client.exceptions.ThrottlingException

The user has exceeded their maximum number of allowed calls to the given API.

Example

try:
  ...
except client.exceptions.ThrottlingException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'Message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    The user has exceeded their maximum number of allowed calls to the given API.

    • Message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class HealthLake.Client.exceptions.ValidationException

The user input parameter was invalid.

Example

try:
  ...
except client.exceptions.ValidationException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'Message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    The user input parameter was invalid.

    • Message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.

Paginators

The available paginators are: