Gå til hovedinnhold
Note! This documentation is automatically generated. Information may be incomplete or contain errors, especially screenshots and code samples. We'd love your feedback: use the "Did you find what you were looking for?" widget below, the chat in the bottom right, or email support@placepoint.no - we'll get back to you as soon as we can.

What answers today

This guide documents the Placepoint API contract: /properties/{country}/{cadastreId} and its siblings. The host serves that contract from the facade launch onward. Until then data.placepoint.no answers on the product routes below, and a trial key reaches them today.

Three of them need no key at all, so they are the fastest way to see whether your setup works.

Without a key​

# every product, its base path, its scope and its own spec
curl https://data.placepoint.no/discovery/

# the OpenAPI 3.1 spec for one product
curl https://data.placepoint.no/specs/property/openapi.json

# what an id looks like in each register, with examples
curl https://data.placepoint.no/reference/ids

# liveness
curl https://data.placepoint.no/health

/discovery/ is the authoritative list: it names every product, whether it is live or in beta, the scope a token needs, and a /specs/<product>/ai-context.md written for a model rather than a person. Read it before you hard-code anything from this page.

ProductBase pathStatusScope
Eiendomsdata/propertyliveproperty:read
Selskapsdata/companylivecompany:read
Verdivurdering/valuationlivevaluation:read
Annonser/listingslivelistings:read
Risiko/riskliverisk:read
Geodata og kart/geolivegeo:read
Unified søk/searchlivesearch:read
Eierskap og reelle rettighetshavere/personbetaperson:read
Reguleringsplaner/plansbetaplans:read
Svenske eiendommer/se/propertiesbetase-properties:read
Svenske selskaper/se/companiesbetase-companies:read

Product names are Norwegian because the API returns them that way.

With a trial key​

Sign in with GitHub on any docs.placepoint.no/api page, set the key as TOKEN, and these answer:

# your token: its scopes and what it is allowed to reach
curl https://data.placepoint.no/auth/me -H "Authorization: Bearer $TOKEN"

# the tenants on one property, the route behind Leietaker-API
curl https://data.placepoint.no/properties/0301-209-369-0-0/tenants \
-H "Authorization: Bearer $TOKEN"

# resolve a free-text property or company reference to an id
curl "https://data.placepoint.no/resolve/property?q=Tordenskiolds%20gate%202" \
-H "Authorization: Bearer $TOKEN"

Every response is { "data": ..., "meta": { "page", "pageSize", "total" } }, and paging is ?page=1&pageSize=25 with 100 as the maximum. That is the current envelope, not the one in Pagination and filtering, which describes the contract.

How the two relate​

Product routes (today)Placepoint API (contract)
Path/property/..., /company/..., /se/.../properties/{country}/{cadastreId}/...
CountryNorway on the Norwegian routes, Sweden under /se/one path, country as a parameter
Spec/specs/<product>/openapi.json, one per productone spec, the reference
Keythe same trial keythe same trial key

An integration you write against a product route keeps working; the contract is additive on top of it. If you are starting now and can wait for the facade, write against the contract and use the product routes to see real payloads meanwhile.

Checking a route before you build on it​

ops/api-daily-sweep calls every route each morning and records whether it answered with data, answered empty, is broken, or needs an enterprise agreement. The four filter-search routes were withdrawn on 2026-09-15, because the backend behind them answered 500 whatever the input. Two address routes answered empty as of 2026-09-10. One more is worth knowing about before you call it: POST /geo/market-activity/summary answers, but with tens of thousands of rows in a single 22 MB response over 30 seconds or so, and it does not page. This repo keeps that measurement in scripts/api-examples/live-surface.json, and npm --prefix scripts run check:api-examples fails when a runnable example in these docs points at a route the sweep found broken or absent. Ask your contact at Placepoint for the current sweep if a route you need is not answering.

Note! This documentation is automatically generated. Information may be incomplete or contain errors, especially screenshots and code samples. We'd love your feedback: use the "Did you find what you were looking for?" widget below, the chat in the bottom right, or email support@placepoint.no - we'll get back to you as soon as we can.