Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • ConfigFileOptions

Index

Properties

_elements?: string
_outputFormat?: string
_since?: string
_type?: string
_typeFilter?: string
accessTokenLifetime?: number

When we request an access token, specify its lifetime in seconds. Note that if the token expires during status pooling or during download another authorization request will be made to get new token and then proceed from there.

Defaults to 300 (5 min)

addDestinationToManifest?: boolean

The original export manifest will have an url property for each file, containing the source location. It his is set to true, add a destination property to each file containing the path (relative to the manifest file) to the saved file.

This is ONLY useful if saveManifest is set to true.

Defaults to false

awsAccessKeyId?: string

Only needed if destination points to S3

awsRegion?: string

Example: us-east-1

awsSecretAccessKey?: string

Only needed if destination points to S3

clientId?: string
destination?: string

Examples:

  • s3://bucket-name/optional-subfolder/ - Upload to S3
  • ./downloads - Save to local folder (relative to the config file)
  • downloads - Save to local folder (relative to the config file)
  • /path/to/downloads - Save to local folder (absolute path)
  • file:///path/to/downloads - Save to local folder (file url)
  • http://destination.dev - Upload to http
  • http://username:password@destination.dev - Upload to http with basic auth
  • "" - do nothing
  • "none" - do nothing

Defaults to ./downloads

fhirUrl?: string

FHIR server base URL. Should be set either here, or as CLI parameter

forceStandardFileNames?: boolean

Sometimes a server may use weird names for the exported files. For example, a HAPI server will use random numbers as file names. If this is set to true files will be renamed to match the standard naming convention - {fileNumber}.{ResourceType}.ndjson.

Defaults to true

includeAssociatedData?: string
inlineDocRefAttachmentTypes?: string[]

If an attachment can be inlined (based on its size and the value of the inlineDocRefAttachmentsSmallerThan option), then its mime type will be compared with this list. Only files of listed types will be inlined and the rest will be downloaded into "attachment" subfolder.

Defaults to ["text/plain", "application/pdf"]

inlineDocRefAttachmentsSmallerThan?: number

In DocumentReference resources, any attachment elements having an url (instead of inline data) and a size below this number will be downloaded and put inline as base64 data. Then the size property will be updated and the url will be removed.

  • To always disable this, set it to 0
  • To always enable this, set it to Infinity (bad idea!)
  • To inline files smaller than 5 MB set it to 5 * 1024 * 1024

Defaults to 0

lenient?: boolean

If true, adds handling=lenient to the prefer request header. This may enable a "retry" option after certain errors. It can also be used to signal the server to silently ignore unsupported parameters.

Can be overridden from terminal parameter --lenient

ndjsonMaxLineLength?: number

While parsing NDJSON files every single (non-empty) line is parsed as JSON. It is recommended to set a reasonable limit for the line length so that a huge line does not consume the entire memory.

Defaults to 1000000

ndjsonValidateFHIRResourceCount?: boolean

If the server reports the file count in the export manifest, verify that the number of resources found in the file matches the count reported by the server.

Defaults to true

ndjsonValidateFHIRResourceType?: boolean

If true, verifies that every single JSON object extracted for the NDJSON file has a resourceType property, and that this property equals the expected type reported in the export manifest.

Defaults to true

parallelDownloads?: number

How many downloads to run in parallel. This will speed up the download but can also overload the server. Don't be too greedy and don't set this to more than 10!

Defaults to 5

patient?: string
pdfToText?: boolean

If this is true, attachments of type PDF that are being inlined will first be converted to text and then inlined as base64

Defaults to false

privateKey?: JWK

The private key used to sign authentication tokens. This must be set in the config file, unless we are connecting to open server (one that has no tokenUrl)

reporter?: "cli" | "text"

The default reporter is "cli". That works well in terminal and renders some fancy stuff like progress bars. However, this does not look good when your STDOUT ends up in log files. For example, if you are using this tool as part of some kind of pipeline and want to maintain clean logs, then consider changing this to "text".

Can be overridden from terminal parameter --reporter.

Defaults to cli

requests?: OptionsOfUnknownResponseBody
retryAfterMSec?: number

If the server does not provide Retry-after header use this number of milliseconds before checking the status again

saveManifest?: boolean

In some cases it might be useful to also save the export manifest file along with the downloaded NDJSON files. Defaults to false

tokenUrl?: string

Ideally, this can be auto-detected from fhirUrl using metadata in the CapabilityStatement or from /.well-known/smart-configuration. However, if you are using this with a Bulk Data server that does not provide proper metadata, you can manually set the tokenEndpoint below. Leave it empty to auto-detect.

Generated using TypeDoc