Hopp til hovedinnhold

Offentlige politihendelser

Politiloggen: hendelser på kart og API

Se de siste offentlige politimeldingene på kart, eller hent meldingsforløpene som JSON. Her finner du både den raske veien til hendelsene og en praktisk innføring i Politiloggen API.

Kilde

Politiets offentlige Politiloggen

Format

Meldingsforløp som JSON

Vil du bare se Politiloggen?

Politipuls viser offentlige meldinger fra Politiloggen på et interaktivt kart. Du kan åpne hele Norge, velge et politidistrikt, finne en kommune eller se hendelser etter kategori. Meldinger gjengis fra kilden, mens kartposisjoner kan være omtrentlige.

Den offisielle loggen ligger hos Politiet. Politipuls er uavhengig av Politiet og er ikke en nødkanal. Ring 112 ved akutt fare.

For utviklere

Slik bruker du Politiloggen API

Politiets offentlige API svarer på GET. Eksemplene bruker skip, take, sortByEnum=LastMessageOn og timeSpanType=LastQuarter. Et kontrollert svar hadde toppnivåfeltene messageThreads og hasMoreResults; hver tråd hadde blant annet ID, distrikt, kategori, kommune, område, tidsstempler, status og meldinger. Se Politiets API-dokumentasjon for felter og parametere.

Endepunkt

https://api.politiloggen.politiet.no/messagethreads

Eksempel med curl

curl --get 'https://api.politiloggen.politiet.no/messagethreads' \
  --data-urlencode 'take=10' \
  --data-urlencode 'skip=0' \
  --data-urlencode 'sortByEnum=LastMessageOn' \
  --data-urlencode 'timeSpanType=LastQuarter' \
  --header 'Accept: application/json'

Eksempel med JavaScript

const url = new URL(
  'https://api.politiloggen.politiet.no/messagethreads'
);

url.search = new URLSearchParams({
  take: '10',
  skip: '0',
  sortByEnum: 'LastMessageOn',
  timeSpanType: 'LastQuarter',
}).toString();

const response = await fetch(url, {
  headers: { Accept: 'application/json' },
});

if (!response.ok) {
  throw new Error(`Politiloggen svarte med HTTP ${response.status}`);
}

const { messageThreads, hasMoreResults } = await response.json();
if (!Array.isArray(messageThreads) || typeof hasMoreResults !== 'boolean') {
  throw new Error('Uventet svarformat fra Politiloggen');
}

Bygg en robust klient

  1. Bruk liten take, øk skip med antallet du faktisk fikk, og stopp når hasMoreResults er false eller siden er tom.
  2. Bruk sortByEnum=LastMessageOn, men ikke avslutt pagineringen ved første eldre tidsstempel.
  3. Valider JSON-formatet og håndter 429 og andre midlertidige ikke-2xx-svar med begrenset retry.
  4. Valider at messages er en liste før behandling. Et manglende eller nullstilt felt betyr ikke at alle tidligere meldinger er fjernet.
  5. Dedupliser på tråd- og meldings-ID, og behold synlig attribusjon til Politiet.

Trenger du data til en AI-agent?

Politipuls tilbyr også et leseorientert MCP-endepunkt med ferdige verktøy for hendelser, søk og aggregater. Det er enklere enn å bygge paginering og normalisering selv når en MCP-klient eller AI-agent er mottakeren.

Åpne MCP-dokumentasjonen

Vanlige spørsmål

Hva er Politiloggen?

Politiloggen er Politiets offentlige oversikt over utvalgte hendelser og oppdrag. Politipuls er en uavhengig tjeneste som viser de samme offentlige meldingene på kart og gjør dem lettere å finne etter sted og kategori.

Finnes det et Politiloggen API?

Ja. Politiets offentlige API tilbyr GET mot /messagethreads på api.politiloggen.politiet.no, med skip, take, sortByEnum=LastMessageOn og timeSpanType=LastQuarter. API-et er dokumentert med Swagger, men formatet kan endres uten forvarsel. Klienter bør validere svarformatet og håndtere feil.

Har Politiloggen API koordinater?

Nei, meldingsforløpene inneholder normalt tekstlige stedsfelt som distrikt, kommune og område, ikke ferdige kartkoordinater. Politipuls geolokaliserer disse opplysningene og merker derfor posisjoner som omtrentlige.

Kan data fra Politiloggen gjenbrukes?

Politiloggen-data publiseres under Norsk lisens for offentlige data (NLOD 2.0). Gjenbruk krever blant annet synlig kildehenvisning til Politiet og at du ikke fremstiller tjenesten som tilknyttet Politiet.