Skip to main content
Beta! Dokumentasjonen er automatisk generert. Informasjonen kan være ufullstendig og inneholde feil, spesielt skjermbilder og videoer. Se Om hjelpesidene. Vi vil veldig gjerne ha innspill: Kontakt oss via «Fant du det du lette etter?» nederst, i chatten nede til høyre eller på support@placepoint.no – vi svarer så fort vi kan!

What lies under the point?

Look up a coordinate in WGS84 and get back the property that covers the point, with the buildings and addresses on that property in the same answer.

Nøkkelen virker i dag på Leietaker-API og dagens Data API; Placepoint API godtar samme nøkkel når det lanseres.

Prøv med et ekte bygg: Oslo S, Jernbanetorget 1

  • Trial key with GitHub in under a minute
  • One GET call
  • JSON
  • Click-in-map lookup
  • Updated continuously

ℹ️ The endpoint responds once Placepoint API has launched. The contract below is final; the Tenant API already responds.

From coordinate to property

The call tells you which property lies under a given point on the map. Map interfaces that let a user click on the map need to know which property the click hit, without asking the user to type in an address or matrikkelnummer, and mobile apps with location services need the same lookup from the device GPS coordinate. It is the same type of lookup that sits behind the click-in-map function in the map interface, available as a call of its own. The call requires the same scope, properties.read, as the rest of the property resources.

The answer contains the property that covers the coordinate, with municipality, plot area and links to sub-resources, together with the buildings on the property (building type, year built, number of floors and areas) and the addresses registered there.

A point that does not hit any registered property, for example in the middle of a fjord or on a public road, returns an answer without a property and empty lists for buildings and addresses, rather than an error.

  • Three things in one answer

    Property, buildings and addresses come in the same call, so an app avoids three separate lookups after the first hit.
  • An empty answer is also an answer

    A point with no hit gives empty lists instead of an error, so you see straight away that the point did not hit anything, without interpreting a 404.
  • plotCount shows composite properties

    property.plotCount flags when the coordinate lies on one of several scattered plots under the same matrikkelnummer.

Fields that actually tell you something

One GET call with longitude and latitude gives you the property, the buildings and the addresses at the point. The fields below are the ones that decide what the answer actually covers.

GET/coordinates/{country}/{lat}/{lon}
curl -X GET "https://data.placepoint.no/coordinates/NO/59.9075/10.7563" \
-H "Authorization: Bearer $TOKEN"

svar · 200

{
"property": {
"country": "NO",
"cadastreId": "0301-207-76-0-0",
"municipality": {
"code": "0301",
"name": "Oslo"
},
"areaM2": 620,
"plotCount": 1,
"propertyType": "EIERSEKSJON",
"addresses": [
{
"text": "Dronning Eufemias gate 16, 0191 Oslo",
"streetName": "Dronning Eufemias gate",
"houseNumber": "16",
"postalCode": "0191",
"postalPlace": "Oslo",
"country": "NO",
"cadastreId": "0301-207-76-0-0",
"location": {
"lat": 59.9075,
"lon": 10.7563
}
}
],
"links": [
{
"href": "https://data.placepoint.no/properties/NO/0301-207-76-0-0/sections",
"title": "Sections"
},
{
"href": "https://data.placepoint.no/properties/NO/0301-207-76-0-0/buildings",
"title": "Buildings"
},
{
"href": "https://data.placepoint.no/properties/NO/0301-207-76-0-0/units",
"title": "Units"
}
]
},
"buildings": [
{
"buildingNumber": "1",
"buildingType": {
"code": "141",
"name": "Boligblokk"
},
"status": "IN_USE",
"builtYear": 2015,
"floors": 12,
"grossAreaM2": 8400,
"usableAreaM2": 7600,
"footprintM2": 700,
"location": {
"lat": 59.9075,
"lon": 10.7563
}
}
],
"addresses": [
{
"text": "Dronning Eufemias gate 16, 0191 Oslo",
"streetName": "Dronning Eufemias gate",
"houseNumber": "16",
"postalCode": "0191",
"postalPlace": "Oslo",
"country": "NO",
"cadastreId": "0301-207-76-0-0",
"location": {
"lat": 59.9075,
"lon": 10.7563
}
}
]
}

Scope: properties.readTeknisk referanse og Try-it

Vis alle felt (127)
FeltTypeBeskrivelse
property.countrystringISO 3166-1 alpha-2.
property.cadastreIdstringCadastre identifier.
property.municipality.codestringKommunenummer (Norway) or kommunkod (Sweden).
property.municipality.namestringName.
property.municipality.countyNamestringFylke (Norway) or län (Sweden) the municipality belongs to.
property.municipality.cityDistrictNamestringBydel, where the municipality is divided into them.
property.areaM2numberRegistered plot area in square meters.
property.plotCountintegerNumber of teiger.
property.buildingCountintegerBuildings registered on the property.
property.sectionCountintegerEierseksjoner registered on the property.
property.unitCountintegerBruksenheter across the buildings.
property.housingUnitCountintegerDwelling units across the buildings.
property.totalUsableAreaM2numberUsable floor area (bruksareal) summed over the buildings, in square meters.
property.totalGrossAreaM2numberGross floor area (bruttoareal) summed over the buildings, in square meters.
property.builtOverAreaM2numberBuilt-over area (bebygd areal, BYA) in square meters.
property.builtOverAreaPctnumberBuilt-over area as a percentage of the plot area.
property.averageFloorsnumberAverage floor count across the buildings.
property.taxationValue.amountstringDecimal string, e.g. "12500000.00".
property.taxationValue.currencystringISO 4217, e.g. NOK or SEK.
property.establishedDatestringWhen the cadastral unit was established in the register.
property.location.latnumberLatitude.
property.location.lonnumberLongitude.
property.addresses[].textstringOne-line address.
property.addresses[].streetNamestringStreet.
property.addresses[].houseNumberstringNumber with letter.
property.addresses[].postalCodestringPostal code.
property.addresses[].postalPlacestringPostal place.
property.addresses[].countrystringISO 3166-1 alpha-2.
property.addresses[].cadastreIdstringThe property the address belongs to.
property.addresses[].location.latnumberLatitude.
property.addresses[].location.lonnumberLongitude.
property.propertyTypestringRegister type.
property.facilityType.codestringRegister code.
property.facilityType.namestringType name.
property.facilityType.descriptionstringWhat the type covers.
property.purposeType.codestringRegister code.
property.purposeType.namestringPurpose name.
property.purposeType.descriptionstringWhat the purpose covers.
property.otherUnitTypeCodestringRegister code for a unit type that is none of the standard property types.
property.landRegistryNamestringName the grunnbok carries for the unit, where it differs from the address.
property.landUsestringDominant AR5 land-use class over the property's teiger. The set follows AR5 and grows; treat an unknown value as OTHER.
property.leaseholdCountintegerActive leasehold plots (festetomter) on the property.
property.hasParkingGaragebooleanWhether a parking garage is registered on the property.
property.historicalReportedAreaM2numberPreviously reported plot area in square meters, where the register has revised it.
property.historicalReportedAreaSourceCodestringRegister code for where the historical area came from.
property.tenantSummary.companyCountintegerCompanies registered at the property.
property.tenantSummary.companiesWithEmployeesCountintegerOf those, how many report at least one employee.
property.tenantSummary.employeeCountintegerEmployees summed over those companies.
property.supplements.hasGroundPollutionbooleanGround pollution is registered on the unit.
property.supplements.hasCulturalHeritagebooleanA cultural-heritage interest is registered on the unit.
property.supplements.hasNotedComplaintbooleanA complaint (klage) is noted on the unit.
property.supplements.hasActiveLeaseholdPlotsbooleanThe unit has active leasehold plots.
property.supplements.hasAgreementBoundaryPointLeasebooleanAn agreement on boundary or point lease is registered.
property.supplements.hasAgreementSiteSpecificRightbooleanA site-specific right is registered by agreement.
property.supplements.pointLeasebooleanThe unit is a point lease (punktfeste).
property.supplements.clarifiedOwnersbooleanOwnership has been clarified.
property.supplements.clarifiedSharesbooleanOwnership shares have been clarified.
property.supplements.sectionedbooleanThe unit is divided into eierseksjoner.
property.supplements.additionalAreabooleanAdditional area (tilleggsareal) is registered.
property.supplements.newlyRegisteredbooleanThe unit was recently registered.
property.supplements.discontinuedbooleanThe unit has been discontinued (utgått).
property.supplements.underMergerRemainsbooleanThe unit remains after a merger (sammenslåing).
property.supplements.underMergerExpiresbooleanThe unit expires through a merger.
property.supplements.partOfConsolidatedRealEstatebooleanThe unit is part of a consolidated property.
property.supplements.createdOnASeparateBasisbooleanThe unit was created on a separate basis.
property.supplements.landAcquisitionRegisteredbooleanA land acquisition is registered.
property.supplements.landPartitioningRequiredRegisteredbooleanRequired land partitioning is registered.
property.supplements.measurementNotCompletedbooleanSurveying of the unit is not completed.
property.supplements.borderPointMarkingIsMissingbooleanBoundary-point marking is missing.
property.supplements.cadastralRecordingDeficiencybooleanA deficiency in the cadastral recording is registered.
property.supplements.registryOfDeedsbooleanThe unit is recorded in the older registry of deeds (grunnboksblad).
property.links[].hrefstringAbsolute URL.
property.links[].titlestringHuman label.
buildings[].buildingNumberstringBygningsnummer within the property.
buildings[].buildingType.codestringRegister type code, e.g. "141".
buildings[].buildingType.namestringType name, e.g. Boligblokk.
buildings[].buildingType.primaryCodestringPrimary type code, the first level of the register's own two-level classification.
buildings[].buildingType.subCodestringSub-type code within the primary code.
buildings[].statusstringConstruction status.
buildings[].builtYearintegerYear the building was completed.
buildings[].floorsintegerNumber of floors.
buildings[].grossAreaM2numberGross floor area (bruttoareal) in square meters.
buildings[].usableAreaM2numberUsable floor area (bruksareal) in square meters.
buildings[].footprintM2numberGround footprint in square meters.
buildings[].residentialUsableAreaM2numberUsable floor area used for housing, in square meters.
buildings[].otherUsableAreaM2numberUsable floor area used for anything but housing, in square meters.
buildings[].builtOverAreaM2numberBuilt-over area (bebygd areal, BYA) in square meters.
buildings[].builtOverAreaPctnumberBuilt-over area as a percentage of the plot area.
buildings[].dwellingUnitCountintegerDwelling units in the building.
buildings[].hasLiftbooleanWhether the building is registered with a lift.
buildings[].waterSupplystringRegistered water supply.
buildings[].seweragestringRegistered sewerage.
buildings[].energySources[]string[]Registered energy sources.
buildings[].heatingTypes[]string[]Registered heating types.
buildings[].usageGroupstringIndustry group the registered building type belongs to.
buildings[].registrationOriginstringHow the building entered the register.
buildings[].isCulturalHeritagebooleanWhether the building is registered as a cultural heritage site.
buildings[].isSefrakRegisteredbooleanWhether the building is in SEFRAK, the register of buildings from before 1900.
buildings[].sequenceNumberintegerThe building's sequence number (løpenummer) within the property.
buildings[].extensionTypeCodestringRegister code for an extension (tilbygg) relationship to another building.
buildings[].isAreaIncompletebooleanWhether the register itself flags the area figures as incomplete. When true, a zero or absent area means unmeasured rather than nothing built.
buildings[].isWithoutBuiltUpAreabooleanWhether the building is registered as having no built-up area.
buildings[].hasSprinklerSystembooleanWhether the building is registered with an automatic fire-suppression system. Absent means no source covers the building, not that it has none.
buildings[].derivedUsagestringWhat Placepoint's classifier reads the building as, from footprint, height and surroundings. Derived, not registered: buildingType is what the register says, and the two disagree most often on older commercial stock. The set grows; treat an unknown value as OTHER.
buildings[].elevation.baseElevationMnumberGround elevation at the building, in meters above sea level.
buildings[].elevation.highestPointMnumberHighest measured point of the building, in meters above sea level.
buildings[].elevation.heightAboveGroundMnumberBuilding height above ground, in meters.
buildings[].statusHistory[].statusstringThe status the building changed to.
buildings[].statusHistory[].changedDatestringWhen the change took effect.
buildings[].statusHistory[].registeredDatestringWhen the register recorded the change.
buildings[].statusHistory[].reasonstringRegistered reason for the change, e.g. Ferdigattest.
buildings[].floorDetails[].floorNumberintegerFloor number, negative below ground.
buildings[].floorDetails[].floorKindstringRegistered floor kind.
buildings[].floorDetails[].usableAreaM2numberUsable floor area on the floor, in square meters.
buildings[].floorDetails[].roomCountintegerRooms on the floor.
buildings[].floorDetails[].dwellingUnitCountintegerDwelling units on the floor.
buildings[].location.latnumberLatitude.
buildings[].location.lonnumberLongitude.
addresses[].textstringOne-line address.
addresses[].streetNamestringStreet.
addresses[].houseNumberstringNumber with letter.
addresses[].postalCodestringPostal code.
addresses[].postalPlacestringPostal place.
addresses[].countrystringISO 3166-1 alpha-2.
addresses[].cadastreIdstringThe property the address belongs to.
addresses[].location.latnumberLatitude.
addresses[].location.lonnumberLongitude.

country must be given explicitly, since the coordinate alone does not say which country's matrikkel it should be looked up against.

Three steps to your first answer

  1. Log in with GitHub

    One click, under a minute, no payment card. The key comes back to this page.
  2. Call the endpoint

    The curl above fills in with your key once you are logged in. The call needs a country code, latitude and longitude from the click or the GPS point.
  3. Use the answer

    Show the property, the buildings and the addresses for the point the user clicked, without a separate lookup for each of them.

Data and sources

The property and building data comes from the matrikkel at Kartverket, updated continuously.

See also

Questions and answers

Which coordinate system does the call expect?
WGS84, the same system most map libraries and mobile devices already work in.
What happens if the coordinate does not hit any property?
The call responds with an empty property value and empty lists for buildings and addresses, rather than an error. The absence of a hit is the answer itself.
How fresh is the data?
The property and building data comes from the matrikkel at Kartverket, updated continuously.
What is the difference between this and address search?
This call goes from coordinate to property. For a search from a text string, see Addresses to matrikkelnummer, which solves the opposite direction: from address text to matrikkelnummer.
Beta! Dokumentasjonen er automatisk generert. Informasjonen kan være ufullstendig og inneholde feil, spesielt skjermbilder og videoer. Se Om hjelpesidene. Vi vil veldig gjerne ha innspill: Kontakt oss via «Fant du det du lette etter?» nederst, i chatten nede til høyre eller på support@placepoint.no – vi svarer så fort vi kan!