Naar de hoofdinhoud

Om Axeptio API na 6 juli 2026 te blijven gebruiken

Op 6 juli 2026 wijzigt Axeptio zijn verificatiesysteem. Hier leest u hoe u uw API-integratie vóór de deadline kunt bijwerken.

Geschreven door Alexandre Dias Da Silva

Vanaf 6 juli 2026 worden tokens die door het oude authenticatiesysteem zijn gegenereerd ongeldig en is het niet langer mogelijk om een API-toegangstoken voor Axeptio te genereren via gebruikersnaam en wachtwoord. De huidige authenticatie-eindpunten zullen verouderd zijn. Elke oproep naar de Axeptio API met een token die door het oude systeem is gegenereerd, wordt afgewezen — of dit nu vanuit code, een script of een tool als Postman is. Mocht dit op u van toepassing zijn, werk dan uw verificatiemethode bij door de onderstaande stappen te volgen.

Op wie is dit van toepassing?

Dit artikel is van toepassing op u als u de Axeptio API rechtstreeks aanroept — vanuit code, een script, uw integraties, een tool als Postman of een ander HTTP-client.

Als u alleen het Axeptio-beheer gebruikt en de API niet rechtstreeks aanroept, is geen actie van uw zijde vereist.

Waarom deze wijziging?

Axeptio migreert zijn verificatiesysteem naar Frontegg. Deze migratie vormt de technische basis voor komende nieuwe functies: MFA, Social login, SSO en auditlogs. Het maakt ook robuuster en fijnmaziger API-toegangsbeheer mogelijk.

Wat gebeurt er als u niet migreert

Vanaf 6 juli 2026 wordt elke oproep naar de Axeptio API met het oude verificatiesysteem afgewezen. Uw al gepubliceerde toestemmingsbanners worden niet beïnvloed — alleen programmatische integraties zullen niet langer werken.

Wat verandert

Het eindpunt voor het verkrijgen van een Bearer-token verandert, evenals de bijbehorende gegevens, maar de manier waarop u het token in uw aanvragen doorgeeft, blijft hetzelfde — een Authorization: Bearer header. Wat in de praktijk verandert: u verkrijgt nu een token met korte levensduur van Frontegg in ruil voor een Client ID en Secret, in plaats van een token met lange levensduur via uw gebruikersnaam en wachtwoord.

Voor

Na

Eindpunt

POST /auth/local/signin

Gegevens

gebruikersnaam + wachtwoord

clientId + secret

Levensduur

Lange levensduur

1 uur — automatisch vernieuwen

Verzending

Authorization: Bearer

Authorization: Bearer (ongewijzigd)

Overzicht van de flow

  1. Genereer een API-toegang in het Axeptio-beheer. U ontvangt een Client ID en Secret die uw integratie identificeren.

  2. Vraag een token aan bij Frontegg met uw Client ID en Secret. U ontvangt een access_token terug, geldig voor 1 uur.

  3. Roep de Axeptio API aan door dit token in de Authorization: Bearer header van elke aanvraag op te nemen.

  4. Vernieuw het token voordat het verloopt via het daarvoor bestemde eindpunt, zonder uw Client ID en Secret opnieuw in te voeren.

1. Genereer een API-toegang in het Axeptio-beheer

Dit gedeelte is beschikbaar vanaf 6 juli 2026. Het is niet mogelijk om uw gegevens van tevoren te genereren.

  1. Meld u aan bij het Axeptio-beheer.

  2. Ga naar Instellingen → API-toegang.

  3. Kopieer uw Client ID en Secret.

Bewaar uw secret op een veilige plaats — het kan niet worden hersteld na generatie. Zet het nooit hardcoded in uw code: sla het op in een omgevingsvariabele.

2. Vraag een token aan bij Frontegg

Roep het Frontegg-eindpunt aan met uw Client ID en Secret. U ontvangt een access_token terug, geldig voor 1 uur, en een refresh_token om het te vernieuwen.

curl -X POST https://login.axept.io/identity/resources/auth/v2/api-token \
-H "Content-Type: application/json" \
-d '{ "clientId": "<CLIENT_ID>", "secret": "<SECRET>" }'







Reactie:

{
"access_token": "eyJ...",
"refresh_token": "dGhp...",
"expires_in": 3600
}







3. Roep de Axeptio API aan

Voeg de access_token in de Authorization header van elke aanvraag in.

curl https://api.axept.io/v1/<ENDPOINT> \
-H "Authorization: Bearer <ACCESS_TOKEN>"







4. Vernieuw het token voordat het verloopt

Het token verloopt na 1 uur. Controleer voordat u een oproep doet of het nog geldig is en vernieuw het indien nodig — zonder uw Client ID en Secret opnieuw in te voeren.

curl -X POST https://login.axept.io/identity/resources/auth/v2/api-token/token/refresh \
-H "Content-Type: application/json" \
-d '{ "refreshToken": "<REFRESH_TOKEN>" }'







Volledige codevoorbeelden

TypeScript / Node.js

const FRONTEGG_URL = process.env.FRONTEGG_URL;

interface FronteggTokenResponse {
access_token: string;
refresh_token: string;
expires_in: number;
}

async function getAccessToken(clientId: string, secret: string): Promise<FronteggTokenResponse> {
const res = await fetch(`${FRONTEGG_URL}/identity/resources/auth/v2/api-token`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ clientId, secret }),
});
if (!res.ok) throw new Error(`Token fetch failed: ${res.status}`);
return res.json();
}

async function refreshAccessToken(refreshToken: string): Promise<FronteggTokenResponse> {
const res = await fetch(`${FRONTEGG_URL}/identity/resources/auth/v2/api-token/token/refresh`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ refreshToken }),
});
if (!res.ok) throw new Error(`Token refresh failed: ${res.status}`);
return res.json();
}

async function callAxeptioApi(accessToken: string, path: string) {
const res = await fetch(`https://api.axept.io/v1${path}`, {
headers: { Authorization: `Bearer ${accessToken}` },
});
if (!res.ok) throw new Error(`API call failed: ${res.status}`);
return res.json();
}

// Utilisation avec rafraîchissement automatique
let token = await getAccessToken(CLIENT_ID, SECRET);

let expiresAt = Date.now() + token.expires_in * 1000;

async function apiCall(path: string) {
// Rafraîchit 60 s avant expiration pour éviter les rejets en cas de latence réseau
if (Date.now() > expiresAt - 60_000) {
token = await refreshAccessToken(token.refresh_token);
expiresAt = Date.now() + token.expires_in * 1000;
}
return callAxeptioApi(token.access_token, path);
}







Python

import time
import requests

FRONTEGG_URL = "https://login.axept.io"
AXEPTIO_API = "https://api.axept.io/v1"

def get_access_token(client_id: str, secret: str) -> dict:
res = requests.post(
f"{FRONTEGG_URL}/identity/resources/auth/v2/api-token",
json={"clientId": client_id, "secret": secret},
)
res.raise_for_status()
return res.json()

def refresh_access_token(refresh_token: str) -> dict:
res = requests.post(
f"{FRONTEGG_URL}/identity/resources/auth/v2/api-token/token/refresh",
json={"refreshToken": refresh_token},
)
res.raise_for_status()
return res.json()

def call_axeptio_api(access_token: str, path: str) -> dict:
res = requests.get(
f"{AXEPTIO_API}{path}",
headers={"Authorization": f"Bearer {access_token}"},
)
res.raise_for_status()
return res.json()

# Utilisation avec rafraîchissement automatique
token = get_access_token(CLIENT_ID, SECRET)

expires_at = time.time() + token["expires_in"]

def api_call(path: str) -> dict:
global token, expires_at
if time.time() > expires_at - 60: # 60 s de marge pour éviter les rejets en cas de latence réseau
token = refresh_access_token(token["refresh_token"])
expires_at = time.time() + token["expires_in"]
return call_axeptio_api(token["access_token"], path)







Naslaggids

De volledige lijst met beschikbare eindpunten is gedocumenteerd in de Axeptio Swagger.

Hulp nodig?

Mochten uw oproepen na de migratie mislukken, als uw gegevens niet zichtbaar zijn in het Axeptio-beheer, of voor andere vragen, neem dan gerust contact op met ons ondersteuningsteam.

Was dit een antwoord op uw vraag?