Skip to content

Execution

A transfer process is initiated by calling the project's start endpoint of the CDA. The project name is given by its project configuration filename, e.g. for the example project from the template it would be example.

Assuming that cd-agent points to the IP address of the CDA then the endpoint is https://cd-agent:8080/api/v2/process/example/start.

Transfer Modes

FTSnext has two transfer modes:

All Consented Patients

If no data is passed to the start request the list of patients is fetched from gICS and all patients with consent are transferred.

For example, to start the transfer of the template's example project run:

shell
curl -X POST https://cd-agent:8080/api/v2/process/example/start

Manual Cohort

The other option is to have a list of IDs as payload with the start request, e.g.

shell
curl -X POST --data '["id1", "id2", "id3"]' -H "Content-Type: application/json" \
  https://cd-agent:8080/api/v2/process/example/start

API Reference for Start Endpoint

Transfer Status

The response's Content-Location header contains a URL with the transfer status, e.g.

shell
curl "https://cd-agent:8080/api/v2/process/status/52792219-b966-44bf-bc1b-c0eafbe8ead0"

The status response looks like this:

json
{
  "processId": "e17d319e-d967-467e-8c8a-0c464bb14951",
  "phase": "COMPLETED",
  "createdAt": [ 2024, 11, 13, 8, 35, 35, 262354492 ],
  "finishedAt": [ 2024, 11, 13, 8, 36, 17, 358171815 ],
  "totalPatients": 100,
  "totalBundles": 119,
  "deidentifiedBundles": 118,
  "sentBundles": 118,
  "skippedBundles": 0
}
FieldDescription
processIdProcess ID
phaseStatus of the process (QUEUED, RUNNING, COMPLETED)
createdAtPoint in time when the process was created
finishedAtPoint in time when the process finished
totalPatientsTotal number of patients to be processed, may change while the process is running
totalBundlesTotal number of bundles to be processed
deidentifiedBundlesNumber of bundles after deidentification
sentBundlesNumber of bundles sent to RDA
skippedBundlesNumber of skipped bundles; if greater than zero, investigate logs to determine the cause

API Reference for Status Endpoint

Monitoring

FTSnext provides a monitoring docker container with Grafana dashboards that show some metrics. To work, the agents' IP addresses in monitoring/prometheus.yml must be set accordingly.