Hoppa till huvudsakligt innehåll

Teknisk beskrivning

Gränssnittsdefinition

Åtkomstpunkt

Verifiering: https://api-ver.lantmateriet.se/distribution/produkter/byggnad/v3

Produktion: https://api.lantmateriet.se/distribution/produkter/byggnad/v3

Schema

XML: http://namespace.lantmateriet.se/distribution/produkter/byggnad/v3/byggnad-3.0.0.xsd

JSON: http://namespace.lantmateriet.se/distribution/produkter/byggnad/v3/byggnad-3.0.0.json

Format

Data kan hämtas i XML- och JSON-format. Vilket format som önskas anges i HTTP-headern Accept med värdena application/xml eller application/json. I frågor som skickas in med POST ska motsvarande värden anges i headern Content-Type.

Referenssystem

I frågor som accepterar eller svarar med geometrier stöds följande referenssystem:

ReferenssystemSRID
SWEREF 99 TM3006
SWEREF 99 12 003007
SWEREF 99 13 303008
SWEREF 99 14 153012
SWEREF 99 15 003009
SWEREF 99 15 453013
SWEREF 99 16 303010
SWEREF 99 17 153014
SWEREF 99 18 003011
SWEREF 99 18 453015
SWEREF 99 20 153016
SWEREF 99 21 453017
SWEREF 99 23 153018

Felmeddelande

Om ett fel uppstår skickas ett svar med en HTTP-felkod och ett Fault-meddelande.

Sammanfattning

Byggnad

Hämta hela - eller delmängder av - byggnader.

OperationBeskrivning
GET /{id} Hämta en byggnad med id.
POST / Hämta en eller flera byggnader med id.

Referens

Hämta referenser till byggnader, med etikett och id.

OperationBeskrivning
GET /referens/beror/{id} Hitta byggnader med registerenhetsid eller gemensamhetsanläggningsid.
POST /referens/geometri Hitta byggnader med en geometri.

Operationer

GET /{id}

Beskrivning

Hämta en byggnad med id. Delar av byggnaden kan hämtas genom includeData-parametern.

Exempel

/12345678-1234-1234-1234-123456789012?includeData=total

Requestparametrar

NamnBeskrivningTypDatatypObligatorisk
idByggnadens objektidentitet.pathstring (uuid)ja
includeData

Vad i byggnaden som ska hämtas. Flera delmängder kan anges som en kommaseparerad lista. Som default hämtas ingenting. Möjliga värden:

  • basinformation - allt utom ytan och berörkretsen.
  • geometri - byggnadens yta.
  • berorkrets - registerenheter.
  • total - allt utom lägenhet.
  • lagenhet - lägenhetsinformation (endast vid nedladdning)
querystring[] (x { "basinformation", "geometri", "berorkrets", "total", "lagenhet" })nej
sridReferenssystem för geometrier. Default: 3006.queryintegernej

Svar

Ett ByggnadResponse i form av en GeoJSON eller GML FeatureCollection med byggnader, beroende på vilket format som efterfrågades.




POST /

Beskrivning

Hämta en eller flera byggnader med id. 250 id:n kan skickas in i samma fråga. Delar av byggnaden kan hämtas genom includeData-parametern.

Exempel

/?includeData=total

Body, Content-Type: application/xml
<IdRequest
    xmlns="http://namespace.lantmateriet.se/distribution/produkter/byggnad/v3">
  <id>12345678-1234-1234-1234-123456789012</id>
  <id>10000008-cafe-cafe-cafe-100000000002</id>
</IdRequest>
Body, Content-Type: application/json
["12345678-1234-1234-1234-123456789012", "10000008-cafe-cafe-cafe-100000000002"]

Requestparametrar

Body: IdRequest - ett objekt innehållande en lista med objektidentiteter.

NamnBeskrivningTypDatatypObligatorisk
includeData

Vad i adressen som ska hämas. Flera delmängder kan anges som en kommaseparerad lista. Som default hämtas ingenting. Möjliga värden:

  • basinformation - allt utom ytan och berörkretsen.
  • geometri - byggnadens yta.
  • berorkrets - registerenheter.
  • total - allt utom lägenhet.
  • lagenhet - lägenhetsinformation (endast vid nedladdning)
querystring[] (x { "basinformation", "geometri", "berorkrets", "total", "lagenhet" })nej
sridReferenssystem för geometrier. Default: 3006.queryintegernej

Svar

Ett ByggnadResponse i form av en GeoJSON eller GML FeatureCollection med adresser, beroende på vilket format som efterfrågades.




GET /referens/beror/{id}

Beskrivning

Hämta referenser till byggnader med en registerenhets eller gemensamhetsanläggnings objektidentitet.

Exempel

/referens/beror/12345678-1234-1234-1234-123456789012

Requestparametrar

NamnBeskrivningTypDatatypObligatorisk
idRegisterenhetens eller gemensamhetsanläggningens id i form av ett UUID.pathstring (uuid)ja
Svar

Ett ByggnadsreferensResponse i form av en JSON-array eller XML-lista med byggnadsreferenser, beroende på vilket format som efterfrågades.




POST /referens/geometri

Beskrivning

Hämta referenser till byggnader inom en given geometri.

Exempel

/referens/geometri

Body, Content-Type: application/xml
<GeometriRequest
    xmlns="http://namespace.lantmateriet.se/distribution/produkter/byggnad/v3">
  <Geometri>
    <gml:Polygon gml:id="ID_8" srsName="urn:ogc:def:crs:EPSG::3006"
        xmlns:gml="http://www.opengis.net/gml/3.2">
      <gml:exterior>
        <gml:LinearRing>
          <gml:posList>6728548 618174 6728423 618153 6728395 618270 6728525 618296 6728548 618174</gml:posList>
        </gml:LinearRing>
      </gml:exterior>
    </gml:Polygon>
  </Geometri>
  <buffer>50</buffer>
</GeometriRequest>
Body, Content-Type: application/json
{
  "geometri": {
    "type": "Polygon",
    "crs": {
      "type": "name",
      "properties": {
        "name": "urn:ogc:def:crs:EPSG::3006"
      }
    },
    "coordinates": [
      [ [618174, 6728548], [618153, 6728423], [618270, 6728395],
        [618296, 6728525], [618174, 6728548] ]
    ]
  },
  "buffer": 50
}

Requestparametrar

Body: GeometriRequest - ett objekt innehållande en geometri i GeoJSON- eller GML-format och eventuellt attributet buffer som kan användas för att utöka området runt geometrin.

Svar

Ett ByggnadsreferensResponse i form av en JSON-array eller XML-lista med byggnadsreferenser, beroende på vilket format som efterfrågades.

Datatyper

Frågor

IdRequest

Hämta byggnad med angiven identifierare. 250 idn kan anges i en fråga.

Properties
NamnBeskrivningTypMultiplicitet
idByggnadens objektidentitetstring (uuid)1..*
Exempel
XML
<IdRequest
    xmlns="http://namespace.lantmateriet.se/distribution/produkter/byggnad/v3">
  <id>12345678-1234-1234-1234-123456789012</id>
  <id>10000008-cafe-cafe-cafe-100000000002</id>
</IdRequest>
JSON
["12345678-1234-1234-1234-123456789012", "10000008-cafe-cafe-cafe-100000000002"]



GeometriRequest

Hitta byggnader inom geometri. Vissa begränsningar finns:

BegränsningMaxvärde
Antal punkter i en MultiPoint.1 000 st
Antal brytpunkter i en LineString eller MultiCurve.1 000 st
Antal brytpunkter i en Polygon eller MultiSurface.1 000 st
Längd på en LineString eller sammanlagd längd på en MultiCurve.

100 000 m

Area för en Polygon eller sammanlagd area för en MultiSurface.1 000 000 m 2
Omkrets på en Polygon eller sammanlagd omkrets på en MultiSurface.200 000 m
Precision för repeterande koordinatpar0.001
Properties
NamnBeskrivningTypMultiplicitet
GeometriEn GML- eller GeoJSON-geometri. GML-geometrier ska följa Lantmäteriets GML 3.2.1-profil.geometri1
bufferOmråde runt den angivna geometrin som ska ingå i sökträffen.integer0..1
Exempel
XML
<GeometriRequest
    xmlns="http://namespace.lantmateriet.se/distribution/produkter/byggnad/v3">
  <Geometri>
    <gml:Polygon gml:id="ID_8" srsName="urn:ogc:def:crs:EPSG::3006"
        xmlns:gml="http://www.opengis.net/gml/3.2">
      <gml:exterior>
        <gml:LinearRing>
          <gml:posList>6728548 618174 6728423 618153 6728395 618270 6728525 618296 6728548 618174</gml:posList>
        </gml:LinearRing>
      </gml:exterior>
    </gml:Polygon>
  </Geometri>
  <buffer>50</buffer>
</GeometriRequest>
JSON
{
  "geometri": {
    "type": "Polygon",
    "crs": {
      "type": "name",
      "properties": {
        "name": "urn:ogc:def:crs:EPSG::3006"
      }
    },
    "coordinates": [
      [ [618174, 6728548], [618153, 6728423], [618270, 6728395],
        [618296, 6728525], [618174, 6728548] ]
    ]
  },
  "buffer": 50
}

Felmeddelande

Fault

Properties

NamnBeskrivningTypMultiplicitet
codeHTTP-felkod.integer1
reasonTextöversättning av felkodstring1
errorsMer detaljerad felbeskrivningstring0..*

Exempel

XML
<Fault
    xmlns="http://namespace.lantmateriet.se/distribution/produkter/fault/v1">
  <code>400</code>
  <reason>Bad Request</reason>
  <errors>Area is too large! Max is 1000000 - area is 1048076</errors>
</Fault>
JSON
{
   "code": 400,
   "reason": "Bad Request",
   "errors": [
      "Area is too large! Max is 1000000 - area is 1048076"
   ]
}