Leverans-API för nedladdning av geodata v1.0 - teknisk beskrivning

Relevanta dokument
FR Nedladdning v1.3 - teknisk beskrivning

Informationsleveranser

Tjänstegränssnitt API Vägledning

E-legitimationsnämndens legitimeringstjänster för test

Tjänstebaserad uppdatering Byggnader Adresser - Lägenheter

Geodataportalen - Metadata - Dokumentation av tjänster

Utkast/Version (8) Användarhandledning - inrapportering maskin-till-maskin

(Icke-lagstiftningsakter) FÖRORDNINGAR

Framtida tillhandahållande av Fastighetsinformation

Produktbeskrivning: Nedladdning uttag

Framtida tillhandahållande av Fastighetsinformation

E-pliktleverans via RSS-feeds

Förvaltningsgemensamma specifikationer

Aktuellt om fastighetsinformation och nytt tillhandahållande

Att hämta organisationers publikationsposter ur DiVA

Webbtjänster med API er

Webbtjänster med API er

Framtida tillhandahållande av Fastighetsinformation

TJÄNSTEBESKRIVNING Bytespunkter/Transfer nodes

Geografisk Indelning Direkt

JHS 193 Unik identifierare för geografisk information Bilaga 1. Process för att bilda URI

Aktuellt om fastighetsinformation och nytt tillhandahållande

Produktbeskrivning: Belägenhetsadress Direkt

Produktbeskrivning: Belägenhetsadress Direkt

Partnerträff. Gävle 15-16/3 2016

Arkivkrav vid införande av nytt IT-system

Dataproduktspecifikation Projektionszoner Sweref 99 Trafikverket. Version 5.0

Registerbeteckning Direkt

Filleveranser till VINN och KRITA

Geografisk Indelning Direkt v teknisk beskrivning

Registerbeteckning Direkt

Introduktion Schenker-BTL AB, Stab IT Beskrivning över informationsintegreringmed Schenker, metodbeskrivning version 1.

DP7 Kompletterande information

Nyheter och framtida planer beträffande geodataprodukter från Lantmäteriet. Håkan Oscarsson

XML-produkter. -Registret över verkliga huvudmän (RVH) Teknisk handledning för webbtjänst mot RVH (Web Services) Datum: Version: 1.

1ME323 Webbteknik 3 Lektion 6 API. Rune Körnefors. Medieteknik Rune Körnefors

Aktuellt från Lantmäteriet

Agenda Tjänstebaserad uppdatering Avtalsläge ABT (Adress, Byggnad, Övrig Topografi) Svensk geoprocess

Topografisk webbkarta, raster

ELF Basemap Visning v1.0 - teknisk beskrivning 1.6.7

Specifikation certifiering - Fastighetsinformation nr 1 Fi2propertymessage_1_0_swe

Referens Uppslag Adress v teknisk beskrivning

Tjänstegränssnitt Api Platsannons

Integration mellan Flex Lön och Flex HRM

Klasser och objekt, referenser Grundkurs i programmering med Python

Tjänstebaserad uppdatering Byggnader Adresser - Lägenheter

InTime HTTP API. Översikt funktioner. Webbtjänster för systemintegration med InTime Messenger.

Teknisk guide för myndigheter

Informationsmaterial och manual Nytt körordersystem webb

JavaScript in SharePoint and not just for Apps. Wictor Wilén

Branschstandarden BEAst Document Överföring av handlingar

PM 1(7) Data är tillgängligt. Figur 1. Figuren visar det sammanvägda resultatet för respektive fråga åren 2009, 2010 och 2011.

API Notera HTTPS POST msg UTF-8. API_key JSON Mobilnummer format 1. Skicka ett SMS till specifikt nummer POST parametrar: from msg API_key Exempel:

Webbtjänster med API er

Retrieve a set of frequently asked questions about digital loans and their answers

Schematransformation SLU

Dataproduktspecifikation Projektionszoner Sweref 99 Järnväg. Version 4.0

Svensk geoprocess. -bidrar till ett effektivare samhälle. Linn Varhaugvik Arto, Lantmäteriet Operativ uppdragsledare Topografiska data

I valfri objektlista börjar du med att markera det objekt du vill arbeta med. Klicka på Utför, välj Matrix och därefter Skicka order.

Federerad åtkomst Information om åtkomst till Apotekens Services tjänster inom ramen för en identitetsfederation.

Förvaltningsgemensam specifikation för leverans av enstaka publikationer till Kungliga biblioteket (FGS-PUBL)

Strukturering med XML och DTD

Heldag om FGS Att ta fram en FGS. Jan Aspenfjäll. FGS projekt

Karta 1:10 000, raster

Bilaga 1 Prelimina r Fö ra ndringar i fi2base

RAPPORT GEODATARÅDETS HANDLINGSPLAN Del av fokusområde 3 gällande standardisering av grunddata i geodatarådets

Bilaga till avtal avseende *** kommuns medverkan som dataleverantör till och användare av den Nationella Vägdatabasen (NVDB)

Tjänstegränssnitt Api Platsannons

Stationsregistret - användarhandledning

Programmering = modellering

Hyperlänkar. I HTML skapar man en hyperlänk med taggen <a> </a>, som är en förkortning av ordet ankare, på (engelska anchor).

1(7) Datum: Dokumentversion: Avser tjänstens gränssnittsversion: Produktbeskrivning: Akt Direkt

Dokument ID - Document ID Utgåva - Issue Status - Status Sida - Page fi2mediasypplymessage_0_6 0 Arb.material 1 (11)

Introduktion till integrering av Schenkers e-tjänster. Version 2.0

Inspire aktuell statusrapport

SIL SOAP API 4.0. beta prerelease

InTime Message Center SMS gränssnittsspecifikation V2.3

Öppna SGU. - Vad är öppna data? - 5 star model - Öppen standard - Öppna format - Öppen licens - Teknik - REST / Atom - Exempel

Avtal/överenskommelse för leverans till K- samsök

GEKAB Marking & Sign System - genvägen till en effektiv märkning

Delrapport DP3. FGS för paketstruktur för e-arkiv Bilaga 1 METS

Dokumentschema förpackning av externa objekt. Version: 1.0 Status: Standard Datum:

Produktbeskrivning: Belägenhetsadress Direkt

Instruktion för att kunna använda Säkerhetstjänsternas administrationsgränssnitt

Kravspec EB19-KAGRPSCB.KURS

Institutionen för Tillämpad fysik och elektronik Stefan Berglund och Per Kvarnbrink. Laboration: Flerskiktade applikationer

Integration med Elektroskandias Internetbutik

Fass webbtjänster Fass Vet.- texter

Avtal/överenskommelse för leverans till K- samsök

DP7 FORMELL KONTROLL

Öppna data, Metodkonferens SMHI öppnar mer och mer

Bilder. Bilder och bildformat

Detta dokument beskriver program, förändringar samt innehåller instruktion för årsskifteskörningarna.

KFF Beskrivning av KFF-handläggningsprocessen 1 (10) Gällande Mikael Andersson REGISTERKARTE-GML

Introduktion till SAML federation

Heldag om FGS FGS:er och deras tekniska regelverk. Karin Bredenberg, FGS funktionen. Standarder. FGS:er och deras tekniska regelverk 1

Fass webbtjänster Veterinära Fass-texter

1ME323 Webbteknik 3 Lek0on 6 API. Rune Körnefors. Medieteknik Rune Körnefors rune.kornefors@lnu.se

Informationsmaterial och manual Nytt körordersystem webb

Transkript:

Leverans-API för nedladdning av geodata v1.0 - teknisk beskrivning Dokumentversion 1.0 Gränssnitt Version 1.0 Schema Åtkomst Åtkomstkontroll http://namespace.lantmateriet.se/distribution/uttag/leverans-1.0.0.json Http-adress för åtkomst till detta API kan variera för olika produkter och redovisas i separat beskrivning. Unik ordernyckel erhålls från Lantmäteriet och måste för alla anrop anges i http-headern ORDER_KEY. Sammanfattning Om API:et Syftet med detta API är att tillgängliggöra uttag ifrån Lantmäteriets geodata för nedladdning utifrån en given beställning (order). API:et tillhandahåller ett grundläggande och generellt mönster för nedladdningstjänster oavsett typ av geodata, och definierar själv inga informationsspecifika operationer, typer eller parametrar. Eftersom uttag av olika typer av geodata ställer olika krav på detta, har vissa delar av API:ets objektmodell lämnats öppna (eller "otypade") för att understödja ett flertal nedladdningstjänster, som själva definierar tjänstespecifika delar. För en specifik nedladdningstjänst finns en separat teknisk beskrivning, som tillsammans med denna ska ge den fullständiga bilden av hur tjänsten tekniskt konsumeras. Se bilden nedan, samt avsnittet Tjänstespecifika definitioner. Operationer Operation Skapa leverans med basuttag URI POST /order/id/leverans Skapa leverans med förändringsuttag POST /order/id/forandringsleverans

Hämta order GET /order/id Hämta leverans GET /order/id/leverans/id Hämta uttag GET /order/id/leverans/id/uttag/id Begrepp Objektmodell Objektbeskrivningar För mer detaljerade definitioner av objekt, attribut och värdelistor - se JSON-schema. Order Order kan vara av typen UTTAG eller ABONNEMANG. För orderobjekt av typen UTTAG finns endast ett leveransobjekt. En order kan omfatta flera informationsslag, som för aktuell leverans delas upp i separata uttagsobjekt. Leverans Ett leveransobjekt skapas vid anrop till Skapa leverans med basuttag eller Skapa leverans med förändringsuttag.

Leveransobjektet har en status som bestäms av den senaste händelsen. När det skapas sätts status till REGISTRERAD, och när alla uttag som ingår i leveransen är klara får leveransobjektet status PRODUCERAD. Om ordern är av typen UTTAG kan bara en leverans skapas. För ordrar av typ ABONNEMANG kan flera leveranser skapas om följande villkor är uppfyllda: Den första leveransen måste skapas via anrop till Skapa leverans med basuttag Alla tidigare leveransobjekt för ordern har status PRODUCERAD. Uttag Uttag kan vara av typen BASUTTAG eller FÖRÄNDRINGSUTTAG. Ett basuttag ger tillgång till en hela datamängden som definierades vid beställningstillfället (när ordern skapas), och förändringsuttag ger tillgång till data inom datamängden som förändrats sedan tidpunkten för föregående leverans. För en order av typen ABONNEMANG måste första leveransen avse ett BASUTTAG, och efterföljande uttag kan avse båda uttagstyperna. För leverans av ordrar med flera informationsslag (anges i attributet "informationstyp") skapas separata uttag. Ett uttagsobjekt har en status som bestäms av den senaste händelsen. Ett nytt objekt får status REGISTRERAD och när det slutligen är klart sätts status till PRODUCERAD. Andra händelsetyper kan användas för vissa nedladdningstjänster, exempelvis PÅGÅENDE när behandling av uttaget påbörjas, eller FEL om bearbetningen misslyckas.. Länk Flera av objekttyperna i modellen refererar till relaterade resurser med länkar, där attributet "rel" anger dess relation. Två typer av länkar finns: 1. 2. navigeringslänkar nedladdningslänkar Navigeringslänkar gör det enklare att hitta relaterade objekt i objektträdet. För dessa kan attributet "rel" ha följande värden: self - länk till sig själv (från order, leverans, uttag) leverans - länk till leverans (från uttag) order - länk till order (från leverans) previous - länk till föregående uttag (från uttag av typen FÖRÄNDRINGSUTTAG) Ett uttagsobjekt kan ha en eller flera nedladdningslänkar till de resurser som uttaget omfattar, exempelvis länkar till geodata (filer, tjänsteanrop, dokument) som kan laddas ner. Värdet i attributet "rel" är för dessa länkar godtyckligt och kan variera mellan informationsslag. Nedladdningslänkar kan läggas till efter hand, då resurserna blir tillgängliga, eller samtidigt när uttaget som helhet är färdigproducerat. Detta kan också variera efter vad som är lämpligast för aktuellt informationsslag. Händelse En lista av händelseobjekt skapas för leverans- och uttagsobjekt, där den senaste händelsens typ anger aktuell status för objektet. Ett nyskapat objekt får först en händelse av typen REGISTRERAD och sedan en händelse av typen PRODUCERAD då bearbetningen är klar. Ett uttagsobjekt kan exempelvis även få status FEL om något fel uppstår eller status PÅGÅENDE under tiden uttagsobjektet behandlas. Specifikation Specifikationsobjektet innehåller den information som används för att skapa data för uttaget. Innehållet skiljer sig åt beroende på vilket informationsslag uttaget gäller, men typiskt finns någon form av urval eller parametrar som styr uttagets omfattning eller format. Metadata Metadata för ett uttagsobjekt kan anges, men dess format (om objektet överhuvudtaget används) varierar med informationsslag. Användning Huvudflöden Huvudflöde för produkttypen UTTAG

1. 2. 3. Initiera leverans via operationen Skapa leverans med basuttag Återkommande statuskontroll via operationen Hämta leverans Hämta data via nedladdningslänk (när leveransens status är PRODUCERAD) Varianter av flödet är möjliga. Exempelvis kan en mer finkornig statuskontroll göras via Hämta uttag. Huvudflöde för produkttypen ABONNEMANG 1. 2. 3. 4. 5. 6. Initiera leverans via operationen Skapa leverans med basuttag Återkommande statuskontroll via operationen Hämta leverans Hämta data via nedladdningslänk (när leveransens status är PRODUCERAD) Initiera leverans via operationen Skapa leverans med förändringsuttag Återkommande statuskontroll via operationen Hämta leverans Hämta data via nedladdningslänk (när leveransens status är PRODUCERAD) Stegen 1-3 är desamma som i huvudfödet för ordertypen "uttag". Så länge ordern är giltig kan leverans av både basuttag och förändringsuttag göras med valfri frekvens och ordning. Ett basuttag omfattar troligen mer data och tar längre tid att producera, och mer högfrekventa förändringsuttag troligen det motsatta. Tjänstespecifika definitioner Detta API utgör ett grundläggande ramverk för nedladdningstjänster. Nedan följer en sammanställning av separata definitioner som måste göras för respektive nedladdningstjänst. Åtkomstpunkt URL till aktuell tjänst. Flera tjänster kan dela åtkomstpunkt. Produkttyper En nedladdningstjänst kan ha stöd för en eller flera typer av produkter med olika regler, exempelvis hur många leveranser som kan göras per beställning. Egenskap Motsvarar i modellen Produkttyp order.typ UTTAG och/eller ABONNEMANG Geodatadefinition Definition av den information som är tillgänglig för nedladdning i tjänsten, exempelvis ett XML- eller JSON-schema. Utökad uttagsdefinition För en specifik nedladdningstjänst måste en mer detaljerad beskrivning av uttagsobjektets generella delar göras: Egenskap Motsvarar i modellen Informationstyp uttag.typ Skiftlägeskänslig och alfanumerisk identifierare för informationen som kan laddas ner. Basparametrar uttag.specifikation.basparametrar Ett JSON-objekt med parametrar som styr hur aktuellt uttag produceras (ev definierat med JSON-schema). Specifikationsobjektet kan på sikt komma att kompletteras med ett objekt för parametrar angivna vid leveranstillfället. Metadata uttag.metadata Ett JSON-objekt med metadata som beskriver det producerade uttaget (ev definierat med JSON-schema).

Nedladdningslänkar uttag.links En beskrivning av de nedladdningslänkar som används i tjänstens uttagsobjekt - hur många, vad de representerar och vilka värden i länkobjektets attribut som används. Händelser uttag.handelser En beskrivning av de händelser som registreras för tjänstens uttagsobjekt - vilka händelsetyper som används och vad de betyder. Operationer Skapa leverans med basuttag Operation POST /order/orderid/leverans Header ORDER_KEY Parameter orderid Ordernyckel, erhålls från Lantmäteriet. Orderns id, erhålls från Lantmäteriet. Ett leveransobjekt med status REGISTRERAD skapas för angiven order. För leveransobjektet skapas ett uttagsobjekt per informationstyp i ordern med typen BASUTTAG, status REGISTRERAD och motsvarande informationstyp. För orderobjekt av typen UTTAG kan endast ett leveransobjekt skapas. För orderobjekt av typen ABONNEMANG kan ett nytt leveransobjekt endast skapas om status för tidigare leveransobjekt är PRODUCERAD. Exempel POST /order/abc_123/leverans Request Response body

"id": 1, "tidsstampel": "2016-12-21T09:42:40.605+01:00" "href": "http://localhost:8080/order/abc_123/leverans/1", "rel": "order", "href": "http://localhost:8080/order/abc_123" "uttag": [ "id": 1, "typ": "BASUTTAG", "informationstyp": "foo", "tidsstampel": "2016-12-21T09:42:40.605+01:00" "href": "http://localhost:8080/order/abc_123/leverans/1/uttag/1", "rel": "leverans", "href": "http://localhost:8080/order/abc_123/leverans/1" "specifikation": "basparametrar": "param_a": "xyz", "param_b": [10, -10] ]

Skapa leverans med förändringsuttag Operation POST /order/orderid/forandringsleverans Header ORDER_KEY Parameter orderid Ordernyckel, erhålls från Lantmäteriet. Orderns id, erhålls från Lantmäteriet. Ett leveransobjekt med status REGISTRERAD skapas för angiven order. För leveransobjektet skapas ett uttagsobjekt per informationstyp i ordern med typen FÖRÄNDRINGSUTTAG, status REGISTRERAD och motsvarande informationstyp. Operationen är endast tillämpbar för orderobjekt av typen ABONNEMANG och kräver ett föregående leveransobjekt med status PRODUCERAD. Uttagsobjekten refererar till det uttagsobjekt i föregående leveransobjekt från vilket det baseras på, så att förändrad information sen föregående leverans kan produceras. Exempel Request POST /order/abc_123/forandringsleverans Response body "id": 2, "tidsstampel": "2016-12-21T11:30:45.627+01:00" "href": "http://localhost:8080/order/abc_123/leverans/2", "rel": "order", "href": "http://localhost:8080/order/abc_123" "uttag": [ "id": 2, "typ": "FÖRÄNDRINGSUTTAG", "informationstyp": "foo",

"tidsstampel": "2016-12-21T11:30:45.627+01:00" "href": "http://localhost:8080/order/abc_123/leverans/2/uttag/2", "rel": "leverans", "href": "http://localhost:8080/order/abc_123/leverans/2", "rel": "previous", "href": "http://localhost:8080/order/abc_123/leverans/1/uttag/1" "specifikation": "basparametrar": "param_a": "xyz", "param_b": [10, -10]

] Hämta order Operation GET /order/orderid Header ORDER_KEY Parameter orderid Ordernyckel, erhålls från Lantmäteriet. Orderns id, erhålls från Lantmäteriet. Hämtar ett orderobjekt för angiven alfanumerisk identifierare. Exempel GET /order/abc_123 Request Response body "id": "abc_123", "typ": "UTTAG", "href": "http://localhost:8080/order/abc_123" "leveranser": [ "id": 1, "tidsstampel": "2016-12-21T10:35:47.859+01:00", "typ": "PRODUCERAD", "tidsstampel": "2016-12-21T10:42:54.566+01:00"

"href": "http://localhost:8080/order/abc_123/leverans/1", "rel": "order", "href": "http://localhost:8080/order/abc_123" "uttag": [ "id": 1, "typ": "BASUTTAG", "informationstyp": "foo", "tidsstampel": "2016-12-21T09:42:40.605+01:00", "typ": "PÅGÅENDE", "tidsstampel": "2016-12-21T09:42:45.446+01:00", "typ": "PRODUCERAD", "tidsstampel": "2016-12-21T09:44:16.674+01:00" "href": "http://localhost:8080/order/abc_123/leverans/1/uttag/1", "rel": "leverans", "href": "http://localhost:8080/order/abc_123/leverans/1" "specifikation": "basparametrar": "param_a": "xyz", "param_b": [10, -10], "metadata": "antal_objekt": 1234 ]

] Hämta leverans Operation GET /order/orderid/leverans/leveransid Header ORDER_KEY Parameter orderid leveransid Ordernyckel, erhålls från Lantmäteriet. Orderns id, erhålls från Lantmäteriet. Leveransens id Hämtar ett leveransobjekt för angiven numerisk identifierare och angivet orderobjekt. Exempel GET /order/abc_123/leverans/1 Request Response body "id": 1, "tidsstampel": "2016-12-21T10:35:47.859+01:00", "typ": "PRODUCERAD", "tidsstampel": "2016-12-21T10:42:54.566+01:00" "href": "http://localhost:8080/order/abc_123/leverans/1",

"rel": "order", "href": "http://localhost:8080/order/abc_123" "uttag": [ "id": 1, "typ": "BASUTTAG", "informationstyp": "foo", "tidsstampel": "2016-12-21T09:42:40.605+01:00", "typ": "PÅGÅENDE", "tidsstampel": "2016-12-21T09:42:45.446+01:00", "typ": "PRODUCERAD", "tidsstampel": "2016-12-21T09:44:16.674+01:00" "href": "http://localhost:8080/order/abc_123/leverans/1/uttag/1", "rel": "leverans", "href": "http://localhost:8080/order/abc_123/leverans/1" "specifikation": "basparametrar": "param_a": "xyz", "param_b": [10, -10], "metadata": "antal_objekt": 1234

] Hämta uttag Operation GET /order/orderid/leverans/leveransid/uttag/uttagsid Header ORDER_KEY Parameter orderid leveransid uttagsid Ordernyckel, erhålls från Lantmäteriet. Orderns id, erhålls från Lantmäteriet. Leveransens id. Uttagets id. Hämtar ett uttagsobjekt för angiven numerisk identifierare, angivet order- och leveransobjekt. Exempel GET /order/abc_123/leverans/1/uttag/1 Request Response body

"id": 1, "typ": "BASUTTAG", "informationstyp": "foo", "tidsstampel": "2016-12-21T09:42:40.605+01:00", "typ": "PÅGÅENDE", "tidsstampel": "2016-12-21T09:42:45.446+01:00", "typ": "PRODUCERAD", "tidsstampel": "2016-12-21T09:44:16.674+01:00" "href": "http://localhost:8080/order/abc_123/leverans/1/uttag/1", "rel": "leverans", "href": "http://localhost:8080/order/abc_123/leverans/1" "specifikation": "basparametrar": "param_a": "xyz", "param_b": [10, -10], "metadata": "antal_objekt": 1234