ЕСОЗ - публічна документація

[DRAFT] REST API getAsyncJobStatus [API-006-001-001-0209]

Сторінка знаходиться в процесі розробки. Інформація на ній може бути застарілою.

https://e-health-ua.atlassian.net/wiki/spaces/EN/pages/17591304241 (remove the link block before publishing the document)

Properties of a REST API method document

Document type

Метод REST API

Document title

[DRAFT] REST API getAsyncJobStatus [API-006-001-001-0209]

Guideline ID

GUI-0011

Author

@

Document version

1

Document status

DRAFT

Date of creation

ХХ.ХХ.ХХХХ (дата фінальної версії документа – RC або PROD)

Date of update

ХХ.ХХ.ХХХХ (дата зміни версії)

Method API ID

API-006-001-001-0209

Microservices (namespace)

MC

Component

Compositions

Component ID

COM-006-001

Link на API-специфікацію

https://app.swaggerhub.com/apis/ehealthua/compositions/Prod#/async/getAsyncJobStatus

Resource

{{host}}/patients/composition/job/{{asyncJobId}}

Scope

composition:read

Protocol type

REST

Request type

GET

Sync/Async

Sync

Public/Private

Public

Purpose

The method is designed to get the execution task status of an asynchronous job: it returns the composition creation asynchronous job status after the signComposition request has been executed.

Used in processes:

Create/Sign composition (general process)

RC_4. Re-sending MVTN to ERLN

RC_5. Extension / reduction MVTN

RC_6. Refinement (preperson -> person) for MVTN

RC_7. Creating "a replacement" composition

Logic

Creation of composition: Asynchronous tasks

f9c26358-f9dd-4b88-94e1-4022ca64ca34.png

Creation of composition: Asynchronous tasks

  1. MIS/Medical employee->Compositions: Creating or updating compositions POST patients/composition/

  2. Compositions->Compositions: AsyncJob planning

  3. Compositions->MIS/Medical employee: AsyncJob scheduled (eta)

  4. MIS/Medical employee->MIS/Medical employee: asynJob.data.eta timer on

  5. MIS/Medical employee-->Compositions: GET /patients/composition/job/{asyncJobId}

  6. Compositions-->MIS/Medical employee: AsincJob pending (eta)

  7. MIS/Medical employee-->MIS/Medical employee: asynJob.data.eta timer on

  8. Compositions->Compositions: AsyncJob completed

  9. MIS/Medical employee->Compositions: GET /patients/composition/job/{asyncJobId}

  10. Compositions->MIS/Medical employee: AsincJob completed (compositionAsyncJobStateData.links)

  11. MIS/Medical employee->Compositions: GET /patients/{patientId}/encounter/{encounterId}/composition/{compositionId}

  12. Compositions->MIS/Medical employee: The composition is received

Configuration parameters

N/A

Dictionaries

N/A

Input parameters

Input parameter

Mandatory

Type

Description

Example

Input parameter

Mandatory

Type

Description

Example

1

asyncJobId

 

String

Async Job Object ID

89678f60-4cdc-4fe3-ae83-e8b3ebd35c59

Request structure

See on SwaggerHub

/patients/composition/job/{asyncJobId}

Headers

Headers

Request data validation

Parameters validation:

  • asyncJobId (correct composition ID needed)

    • 404 - in case of error

Processing

N/A

Response structure examples

See on SwaggerHub

compositionAsyncJobStateResponse{

description:

Стан планування/виконання асинхронної задачі

data*

compositionAsyncJobStateData{

eta* string($datetime)
example: 2022-10-24T12:35:49.956Z

id* string($uuid)
example: 89678f60-4cdc-4fe3-ae83-e8b3ebd35c59

links* [compositionAsyncJobListItem{

entity*string
example: eHealth/resources 

}]

status* string

Enum:
[ PENDING, FAILED, DONE ] }

}

Example:

{ "data": { "eta": "2022-10-24T12:35:49.956Z", "id": "89678f60-4cdc-4fe3-ae83-e8b3ebd35c59", "links": [ { "entity": "eHealth/resources" } ], "status": "PENDING" } }

HTTP status codes

Response code

HTTP Status code

Message

Internal name

Description

Response code

HTTP Status code

Message

Internal name

Description

1

Базові

2

 

200

Task found

 

Correct answer with one of the possible statuses: PENDING, FAILED, DONE

3

 

400

Invalid request format

 

Error in query syntax or other error

4

 

404

Task not found

 

The task with the specified ID does not exist or was not found

5

Специфічні

6

 

 

 

 

 

Post-processing processes

N/A

Technical modules where the method is used

 

ЕСОЗ - публічна документація