Kom igång med TIC Identity

Den här guiden hjälper dig att integrera TIC Identity på under 30 minuter. Vi går igenom allt från att skapa ett konto till att göra ditt första API-anrop.

Förutsättningar

  • Ett TIC-konto med API-åtkomst
  • En HTTPS-aktiverad webbplats för callback-URL:er
  • Grundläggande kunskap om REST API:er

Steg 1: Skapa en tenant

En tenant representerar din applikation eller kund i TIC Identity. Varje tenant har sina egna inställningar, API-nycklar och statistik.

Testmiljö
Alla nya tenants startar automatiskt i testläge. Du kan använda BankID:s testpersonnummer för att verifiera din integration.

Steg 2: Konfigurera callback-URL:er

Lägg till de URL:er som TIC Identity får redirecta till efter autentisering. Detta är en säkerhetsåtgärd för att förhindra open redirect-attacker.

https://din-app.se/auth/callback
https://din-app.se/auth/success
https://localhost:3000/auth/callback  (för utveckling)

Steg 3: Välj integrationsläge

Alternativ A: Hosted mode (enklast)

Redirecta användare till vår färdiga inloggningssida. Perfekt för snabb integration.

<a href="https://id.tic.io/din-tenant/login?callback=https://din-app.se/callback">
  Logga in med BankID
</a>

Alternativ B: API mode (full kontroll)

Bygg ditt eget UI och använd vårt API för backend-logiken.

// Starta autentisering
const response = await fetch('https://id.tic.io/api/v1/auth/bankid/start', {
  method: 'POST',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    endUserIp: '192.168.1.1'
  })
});

const { sessionId, qrStartToken } = await response.json();

// Visa QR-kod för användaren
// Poll /api/v1/auth/{sessionId}/poll för status

Steg 4: Hantera callback

När användaren har autentiserat sig redirectas de tillbaka till din callback-URL med ett session_id i query-strängen.

// I din callback-hanterare
const sessionId = new URLSearchParams(window.location.search).get('session_id');

// Hämta sessionsdata från backend
const session = await fetch(`/api/verify-session?id=${sessionId}`);
const userData = await session.json();

// userData innehåller:
// - personalNumber: "199001011234"
// - givenName: "Test"
// - surname: "Testsson"
// - status: "complete"

Steg 5: Verifiera sessionen

Anropa vårt API från din backend för att verifiera sessionen och hämta användardata.

Viktigt
Verifiera alltid sessionen från din backend, aldrig direkt i klienten. Session ID:t kan manipuleras av användaren.
// C# exempel
var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-Api-Key", "YOUR_API_KEY");

var response = await client.GetAsync(
    $"https://id.tic.io/api/v1/auth/{sessionId}/collect");

var session = await response.Content.ReadFromJsonAsync<SessionResponse>();

if (session.Status == "complete")
{
    // Användaren är verifierad
    var user = new User
    {
        PersonalNumber = session.User.PersonalNumber,
        Name = session.User.Name
    };
}

Nästa steg

Klart!
Du har nu en fungerande integration med TIC Identity. Kontakta oss om du behöver hjälp med produktionssättning.