Asinhronie datu izmaiņu pieprasījumi

Apstrādes statusa izgūšana


Apraksts: apstrādes statusa izgūšana ir nepieciešama, veicot datu reģistrācijas vai labošanas asinhronos pieprasījumus FHIR API.


Autorizācija: pieprasījuma apstrādes statuss ir pieejams datu reģistrācijas vai labošanas pieprasījuma veicējam un iestādes tehniskajam lietotājam, ja tam ir piešķirtas atbilstošas FHIR apgabala tiesības VVIS autorizācijas modulī.

NB! Ja iestāde plāno izmantot iespēju izgūt pieprasījuma apstrādes statusu, izmantojot tehnisko lietotāju, nepieciešams pieteikt atbilstošo tiesību piešķiršanu NVD palīdzības dienestam.


Pieprasījuma apstrādes statuss tiek pieprasīts pēc uzdevuma jeb job identifikatora. Uzdevuma identifikators tiek norādīts pieprasījuma atbildes Header lauka content-location.


Metode GET
Host https://fhir-api-tv.lab.eveseliba.gov.lv
Galapunkts fhir/api/_job/{jobId}
Izsaukuma parametrs jobId
Pilnais izsaukums https://fhir-api-tv.lab.eveseliba.gov.lv/fhir/api/_job/{JobId}

Pieprasījumu struktūra

fhir/api/_job/[jobId]

Metode GET

Galapunkta GET metodei atgriež datus par job statusu.

  • Metode "/id" - Metodes ietvaros pieprasījumu struktūrā ir sagaidāms norādīt izsaucamā resursa tipu, veidojot izsaukumu atbilstoši formātam: "fhir/api/_job/{JobId}".

Apstrādes statusa pieprasījuma atbilde, ja pieprasījuma apstrāde vēl nav sākusies: 202 Accepted un atbildes Header laukā x-progress vērtība new.

NB! Iespējams starpstāvoklis: apstrāde ir sākusies, bet vēl nav pabeigta. Tādā gadījumā atbildē var tikt saņemta zemāk redzama informācija kopa, kura jāinterpretē, ka nepabeigta pieprasījuma apstrāde un pēc 10 sekundēm jāveic atkārtots statusa izgūšanas pieprasījums, lai saņemtu sistēmas piešķirto Id vērtību un reprezentāciju, ja tā ir pieprasīta:


{
  "resourceType": "Bundle",
  "type": "batch-response",
  "entry": [
    {
      "response": {
        "status": "201 Created"
      }
    }
  ]
}

Uzdevuma statusa pieprasījuma atbilde, ja pieprasījums ir apstrādāts veiksmīgi un uzdevuma pieprasījumā Header laukā Prefer nav norādīta vērtība return=representation:

{
    "resourceType": "Bundle", - atbildes struktūra
    "type": "batch-response", - struktūras tips
    "entry": [
        {
            "response": {
                "status": "201 Created", - pieprasījuma statuss
                "location": "{resourceName}/\{resourceId}", - resursa atrašanās vieta serverī
                "etag": "W/\"1\"", - resursa versija
                "lastModified": "2023-09-14T04:43:33.6675+00:00" - resursa reģistrācijas datums un laiks
            }
        }
    ]
}

Uzdevuma statusa pieprasījuma atbilde, ja pieprasījums ir apstrādāts veiksmīgi un uzdevuma pieprasījumā Header laukā Prefer ir norādīta vērtība return=representation:

{
    "resourceType": "Bundle", - atbildes struktūra
    "type": "batch-response", - struktūras tips
    "entry": [ - izveidoto resursu saraksts un saturs un apstrādes atbilde
        {
            "resource": {
                "resourceType": "Resursa nosaukums", 
                "id": "resursa id", 
                "meta": {
                    "versionId":"versijas numurs"
                    "lastUpdated": "reģistrācijas datums un laiks",
                    "profile": [
                        "resursa profila canonical url"
                    ]
                },
                {
                ...
                },
             "response": {
                "status": "201 Created", - pieprasījuma statuss
                "location": "{resourceName}/\{resourceId}", - resursa atrašanās vieta serverī
                "etag": "W/\"1\"", - resursa versija
                "lastModified": "2023-09-14T04:43:33.6675+00:00" - resursa reģistrācijas datums un laiks
            }
        }
    ]
}