Skip to content

REST API

Integrér dine egne systemer med mTime via REST API’et.

Overblik

Alt, hvad en kundeintegration må kalde, er beskrevet i API-referencen: den komplette og altid opdaterede liste over endpoints, formatet på forespørgsler og svar samt en ændringslog over ikke-bagudkompatible ændringer. Det samme dokument findes i maskinlæsbar form på /api/openapi.yaml (OpenAPI 3.1).

API’et ligger under /api på samme adresse som applikationen, for eksempel https://mtime.app/api.

Autentificering

Adgang til API’et sker altid gennem en servicebruger – en bruger, der ikke er en person, men repræsenterer én integration – og dens API-nøgler. Hvordan du opretter dem, er beskrevet i Brugere og rettigheder.

Send nøglen som bearer-token i hver forespørgsel:

Authorization: Bearer mtime_ak_...
En API-nøgle vises kun én gang, når den oprettes. Nøgler udløber på den dato, der blev angivet ved oprettelsen, og kan til enhver tid tilbagekaldes.

API-versioner

API’et versioneres efter dato. Din integration har én kompatibilitetsdato – den dag, den blev udviklet op mod API’et – og hvert endpoint svarer med det format, det havde den dag, også selvom endpointet er ændret siden. Nye endpoints og andre bagudkompatible tilføjelser får du adgang til uanset datoen.

  • Når en servicebruger oprettes, sættes dens kompatibilitetsdato til dagens dato, så integrationen aldrig bliver overrasket af senere ikke-bagudkompatible ændringer.
  • Den dato, der faktisk er brugt, sendes med i hvert svar i headeren X-Mtime-Api-Version. Du kan også sende headeren med i en forespørgsel for at bruge en anden dato end den gemte i netop det kald.
  • En administrator kan rykke den gemte dato frem – for hele servicebrugeren eller for en enkelt API-nøgle – under Admin › Brugere. Gør det bevidst, når integrationen er opdateret efter ændringsloggen.

Ikke-bagudkompatible ændringer og udfasning

Kun ændringer, der ikke er bagudkompatible, giver en ny version, og hver af dem er dokumenteret – hvad der er ændret, og hvorfor – i afsnittet Breaking changes i API-referencen.

Når et format erstattes, fortsætter det gamle med at svare de kaldere, der er låst til en dato før ændringen, i mindst 18 måneder. Når det er planlagt fjernet, får svarene headerne Deprecation og Sunset, og under Admin › Brugere advarer mTime administratorer om, hvilke servicebrugere og API-nøgler der stadig er låst til den version, der udfases.