Felkoder
Referens för HTTP-statuskoder och felmeddelanden i TIC Credit API.
HTTP-statuskoder
Översikt av de statuskoder som API:et kan returnera.
| Kod | Betydelse | Beskrivning |
|---|---|---|
200 | OK | Förfrågan lyckades. |
400 | Bad Request | Ogiltig förfrågan — valideringsfel. |
401 | Unauthorized | Ogiltig eller saknad API-nyckel, inaktivt konto, eller konto som ännu inte validerats av TIC. |
404 | Not Found | Kreditupplysningen hittades inte, eller är inte slutförd ännu (status != "Completed"). |
429 | Too Many Requests | Månadens kvot är slut för vald leveransmetod och inget överskjutande pris är konfigurerat. |
500 | Internal Server Error | Serverfel — försök igen senare. |
Felsvarsformat
Alla fel returneras som JSON med samma struktur.
Felsvar
{
"error": "personalNumber is required"
}
Valideringsfel (400)
Vanliga valideringsfel och hur du åtgärdar dem.
| Felmeddelande | Orsak | Lösning |
|---|---|---|
personalNumber is required |
Personnummer saknas. | Ange ett 12-siffrigt personnummer. |
personalNumber must be 12 digits (YYYYMMDDNNNN) |
Ogiltigt personnummerformat. | Använd 12 siffror — bindestreck och mellanslag ignoreras automatiskt. |
mobilePhoneNumber is required for SMS delivery |
Mobilnummer saknas vid SMS-flöde. | Ange mobilnummer i E.164 eller svenskt nationellt format. |
Invalid phone number. Provide a valid number in E.164 or national format. |
Ogiltigt telefonnummer. | Exempel: +46XXXXXXXXX eller 0XXXXXXXXX. |
A mobile phone number is required for SMS delivery. |
Fast telefonnummer angivet. | Använd ett mobilnummer — SMS kan inte skickas till fasta nummer. |
Credit check cannot be cancelled in status '...' |
Försökt avbryta en redan slutförd upplysning. | Endast status Requested, SmsSent, PendingAuth eller PendingConsent kan avbrytas. |
Autentiseringsfel (401)
Problem med API-nyckel eller tenant-status.
| Felmeddelande | Orsak | Lösning |
|---|---|---|
Invalid API key |
API-nyckeln är ogiltig eller felskriven. | Kontrollera att du använder rätt nyckel i X-Api-Key-headern. |
Tenant is inactive |
Kontot har inaktiverats. | Kontakta support för att återaktivera. |
Tenant is pending validation |
Kontot har registrerats men väntar på TIC:s validering. | Vänta — validering sker normalt inom 1 arbetsdag efter registrering. |
Resurser ej funna (404)
Förfrågan refererar till en resurs som inte finns eller inte är tillgänglig ännu.
| Felmeddelande | Orsak | Lösning |
|---|---|---|
Credit check not found |
Kreditupplysning med angivet GUID finns inte inom ditt konto. | Kontrollera att GUID:et är korrekt och tillhör rätt tenant. |
Credit check is not completed |
Upplysningen finns men är inte klar ännu (status != "Completed"). |
Vänta på credit.completed-webhook eller polla /checks. |
Credit check is not completed or has no report |
PDF begärd innan kreditupplysningen är färdig. | Försök igen när status är Completed. |
Kvotöverskridande (429)
Returneras när månadens inkluderade kvot för vald leveransmetod är slut och ditt planval inte har ett överskjutande pris konfigurerat för den metoden.
"letter" ↔ "sms") för att använda en metod
där överskjutande är tillåtet, eller uppgradera din plan. Se
Kvoter och överskjutande.
Felhantering — best practices
Rekommenderade mönster för robust integration.
Retry med exponential backoff
async function fetchWithRetry(url, options, maxRetries = 3) {
for (let i = 0; i < maxRetries; i++) {
const response = await fetch(url, options);
// Only retry on server errors — 429 means quota is exhausted
// for the chosen delivery method; retrying will not help.
if (response.status >= 500) {
await new Promise(r => setTimeout(r, Math.pow(2, i) * 1000));
continue;
}
return response;
}
}
Logga fel med tillräcklig kontext
const response = await fetch('/api/v1/check', options);
if (!response.ok) {
const error = await response.json();
console.error(`TIC Credit API error: ${response.status}`, {
error: error.error,
creditCheckId: creditCheckId ?? null,
timestamp: new Date().toISOString()
});
}
Behöver du hjälp?
Om du stöter på ett fel som du inte kan lösa.
Kontakta support@tic.io med:
- HTTP-statuskod och felmeddelande
- Request-body (utan känslig data)
- Tidpunkt för felet
- Din tenant-slug