Få beskjed med det samme
Opprett, list og slett abonnement på endringer for en eiendom eller et selskap, levert som signerte CloudEvents-webhooks til en URL du selv oppgir.
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
- Prøvenøkkel med GitHub på under ett minutt
- Signerte webhooks
- CloudEvents 1.0
- At-least-once levering
- Idempotent oppretting
ℹ️ Endepunktet svarer når Placepoint API er lansert. Kontrakten under er endelig; Leietaker-API svarer allerede.
Fra endring til varsel
Kallene svarer på hvordan et system får beskjed når noe faktisk endrer seg, i stedet for å polle et objekt på nytt hver time. Banker som følger opp pantesikkerhet trenger varsel når en eier eller en heftelse endres, forvaltere trenger varsel når en ny transaksjon tinglyses på en eiendom i porteføljen, og systemer som overvåker mange selskaper samtidig slipper å hente hvert selskap på nytt bare for å oppdage at ingenting har skjedd.
Et abonnement rettes mot enten en eiendom eller et selskap og en liste hendelsestyper, for eksempel OWNER_CHANGED eller TRANSACTION_REGISTERED. Hver hendelse leveres som en signert CloudEvents 1.0-webhook, og leveransen er at-least-once, så mottakeren må håndtere at samme id kan komme mer enn én gang.
Idempotent oppretting
createSubscriptionkrever enIdempotency-Key-header, så en retry av samme opprettelse gir samme svar i 24 timer i stedet for et duplikat abonnement.Signert og verifiserbar
Hver webhook bærer headerenPlacepoint-Signature, til å verifisere med HMAC før du stoler på innholdet.At-least-once, håndter duplikater
Et mislykket forsøk gjentas i inntil 24 timer, så sammeidkan komme mer enn én gang på mottakersiden.
Felter som faktisk sier noe
Tre kall dekker hele livssyklusen til et abonnement, alle med scopet subscriptions.write.
Opprett et abonnement.
/subscriptionscurl -X POST "https://data.placepoint.no/subscriptions" \
-H "Authorization: Bearer $TOKEN" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"target":{"kind":"PROPERTY","country":"NO","cadastreId":"0301-207-76-0-0"},"events":["OWNER_CHANGED","TRANSACTION_REGISTERED"],"webhookUrl":"https://example.com/webhooks/placepoint","secret":"whsec_REPLACE_WITH_32_RANDOM_CHARS"}'
svar · 201
{
"id": "sub_9f2c1a",
"target": {
"kind": "PROPERTY",
"country": "NO",
"cadastreId": "0301-207-76-0-0"
},
"events": [
"OWNER_CHANGED",
"TRANSACTION_REGISTERED"
],
"webhookUrl": "https://example.com/webhooks/placepoint",
"status": "ACTIVE",
"createdAt": "2026-09-07T10:15:00Z"
}
List egne abonnement
listSubscriptions viser egne aktive og pausede abonnement.
/subscriptionscurl -X GET "https://data.placepoint.no/subscriptions" \
-H "Authorization: Bearer $TOKEN"
svar · 200
{
"items": [
{
"id": "sub_9f2c1a",
"target": {
"kind": "PROPERTY",
"country": "NO",
"cadastreId": "0301-207-76-0-0"
},
"events": [
"OWNER_CHANGED",
"TRANSACTION_REGISTERED"
],
"webhookUrl": "https://example.com/webhooks/placepoint",
"status": "ACTIVE",
"createdAt": "2026-09-07T10:15:00Z"
}
]
}
Slett et abonnement
deleteSubscription stanser leveransen umiddelbart.
/subscriptions/{subscriptionId}curl -X DELETE "https://data.placepoint.no/subscriptions/sub_9f2c1a" \
-H "Authorization: Bearer $TOKEN"
En levert hendelse ser slik ut:
{
"specversion": "1.0",
"type": "no.placepoint.property.owner_changed",
"source": "https://data.placepoint.no/subscriptions/sub_9f2c1a",
"id": "evt_4b2a1c",
"time": "2026-09-07T10:15:00Z",
"datacontenttype": "application/json",
"data": {
"country": "NO",
"cadastreId": "0301-208-15-0-0",
"changedField": "owners"
}
}
Verifiser signaturen i headeren Placepoint-Signature: t=<unix>,v1=<hex> før du stoler på innholdet:
const crypto = require("node:crypto");
function isValid(header, rawBody, secret) {
const [t, v1] = header.split(",").map((p) => p.split("=")[1]);
const expected = crypto
.createHmac("sha256", secret)
.update(`${t}.${rawBody}`)
.digest("hex");
return crypto.timingSafeEqual(Buffer.from(v1), Buffer.from(expected));
}
Tre steg til første svar
Logg inn med GitHub
Ett klikk, under ett minutt, ingen betalingskort. Nøkkelen kommer tilbake til denne siden.Kall endepunktet
Curl-en over fyller seg ut med nøkkelen din når du er logget inn.createSubscriptiontrenger mål (eiendom eller selskap), hendelsestyper og enIdempotency-Key.Bruk svaret
Verifiser signaturen iPlacepoint-Signaturemed hemmeligheten din før du stoler på innholdet, med funksjonen i eksempelet over.
Data og kilder
Varslene utløses av de samme endringene som resten av API-et eksponerer: eierskifte, ny transaksjon og tilsvarende hendelser på eiendommen eller selskapet abonnementet gjelder.
Se også
Spørsmål og svar
Hva skjer hvis jeg sender samme opprettelse to ganger?
Idempotency-Key-headeren gjør en retry trygg: samme nøkkel innen 24 timer gir samme svar tilbake i stedet for et nytt abonnement.Kan samme hendelse komme flere ganger?
id kan komme mer enn én gang.Hvordan verifiserer jeg at en webhook faktisk kommer fra Placepoint?
Placepoint-Signature: t=<unix>,v1=<hex> bærer en HMAC-signatur over tidsstempel og body. Regn ut samme HMAC med hemmeligheten din og sammenlign, som i eksempelet over.Hvilke hendelsestyper kan jeg abonnere på?
OWNER_CHANGED og TRANSACTION_REGISTERED er kjernen, med flere hendelsestyper på eiendom og selskap etter hvert som API-et bygges ut.