Innehållsförteckning | ||
---|---|---|
|
Sektion |
---|
InledningOm dokumentetDenna beskrivning är ett tillägg av tjänstekontrakten i tjänstedomänen masterdata:citizen:citizen. Dokumentet beskriver hur tjänsten ”Hämta filer” är uppbyggd med hjälp av en SOAP-service för listning samt en REST-service hämtning. Valet att använda en SOAP+REST baseras på dokument ARK_0038 enligt Rivta standarden. Tjänsten för att lista tillgängliga filer är av typen SOAP (enligt Rivta2.1) och tjänsten för att hämta filer är av typen HTTP-REST. En REST-service tillåter olika typer av HTTP anrop GET, PUT, POST och DELETE. I ”hämta filer”-tjänsten är det endast GET som kommer att implementeras, då det bara är hämtning som kan utföras. Anrop mot tjänsterna sker med https(tvåvägs-SSL) och validering av certifikatet från tjänstekonsument utförs för att endast tillåta att tjänsten levererar data till tillåtna mottagare. KonnektivitetSOAP-tjänst för att lista tillgängliga filer är tillgängliga via Nationell Tjänsteplattform (NTjP), och är på så vis nåbar både via SJUNET och INTERNET. Dock saknar NTjP stöd för REST-baserade tjänster vilket medför att REST-tjänst för att hämta filer är enbart tillgänglig via SJUNET och med direktaccess mot tjänsteproducent. FlödeFlödet för att hämta filer börjar med anrop till SOAP-tjänsten GetFilesForOrderId (via NTjP). Specifikation finns i TKB för masterdata:citizen:citizen (www.rivta.se). En konsument anropar tjänsten med ett OrderId. PU-tjänsten returnerar ett svar innehållande 0..n referenser (unik URL för varje hämtbar fil) som konsumenten kan gå igenom för att hämta varje enskild fil via REST-tjänsten. Referensen som returneras användas i sin helhet för att hämta en fil.
GetFilesForOrderIdSe tjänstekontraktsbeskrivning https://bitbucket.org/rivta-domains/riv.masterdata.citizen.citizen PuDownloadTjänst för att hämta en fil. Tjänsten måste anropas för varje fil som ska hämtas. Således måste anrop föregås av anrop till tjänsten "lista tillgängliga filer" (GetFilersForOrderId) för att veta vilka filer som kan hämtas. Konsumentens certifikat verifieras för att inga filer som inte tillhör konsumenten returneras. ExempelExempel på anropTjänsten anropas genom: https://<host>:<port>/pudownload/file/<GUID> GUID kan se ut enligt följande: 7fbbe720-ec37-460b-9edf-780ff570f4fc Exempel på svarSvar om efterfrågad fil laddas ner:Statuskod: 200 Schema för innehåll i zippad XML-fil följer Skatteverkets XSD Navetavisering V1 Struktur för filnamn (både ZIP och XML): <orderId>_<datum>_<löpnummer>.zip (samt .xml) Svar vid ogiltig förfrågan:Statuskod: 400 BAD_REQUEST * Ogiltig context path Statuskod: 401 UNAUTHORIZED * Konsumenten saknar behörighet till tjänsten
Statuskod: 404 NOT FOUND * Begärd referens (GUID) existerar inte Statuskod: 500 INTERNAL SERVER ERROR * Internt oförutsätt fel |