SDKs och klientbibliotek

Integrera TIC Identity i din applikation med våra SDK:er eller använd REST API:t direkt.

REST API

TIC Identity exponerar ett REST API som fungerar med alla programmeringsspråk. Se API-referensen för fullständig dokumentation.

Base URL

Miljö URL
Produktion https://id.tic.io/api/v1
Test https://id-test.tic.io/api/v1

Autentisering

Alla anrop kräver en API-nyckel i X-Api-Key-headern:

X-Api-Key: YOUR_API_KEY

JavaScript / TypeScript

Installation

npm install @tic-identity/client

Användning

import { TicIdentityClient } from '@tic-identity/client';

const client = new TicIdentityClient({
  apiKey: 'YOUR_API_KEY',
  environment: 'test' // eller 'production'
});

// Starta autentisering
const session = await client.auth.start({
  provider: 'bankid',
  endUserIp: '192.168.1.1'
});

// Generera QR-kod
const qrData = client.qr.generate(
  session.qrStartToken,
  session.qrStartSecret,
  0 // sekunder sedan start
);

// Polla för status
const result = await client.auth.poll(session.sessionId);

if (result.status === 'complete') {
  console.log('Autentiserad:', result.user.name);
}
Kommer snart
JavaScript SDK är under utveckling. Använd REST API:t direkt tills vidare.

C# / .NET

Installation

dotnet add package TicIdentity.Client

Användning

using TicIdentity.Client;

var client = new TicIdentityClient(new TicIdentityOptions
{
    ApiKey = "YOUR_API_KEY",
    Environment = TicEnvironment.Test
});

// Starta autentisering
var session = await client.Auth.StartAsync(new AuthStartRequest
{
    Provider = "bankid",
    EndUserIp = "192.168.1.1"
});

// Polla för status
var result = await client.Auth.PollAsync(session.SessionId);

if (result.Status == AuthStatus.Complete)
{
    Console.WriteLine($"Autentiserad: {result.User.Name}");
}
Kommer snart
.NET SDK är under utveckling. Använd REST API:t direkt tills vidare.

Direkt REST-anrop

Du kan enkelt integrera TIC Identity med valfritt HTTP-bibliotek.

cURL exempel

# Starta autentisering
curl -X POST https://id.tic.io/api/v1/auth/bankid/start \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"endUserIp": "192.168.1.1"}'

# Polla för status
curl -X POST https://id.tic.io/api/v1/auth/{sessionId}/poll \
  -H "X-Api-Key: YOUR_API_KEY"

# Hämta QR-kod
curl https://id.tic.io/api/v1/auth/{sessionId}/qr \
  -H "X-Api-Key: YOUR_API_KEY"

Python exempel

import requests

API_KEY = "YOUR_API_KEY"
BASE_URL = "https://id.tic.io/api/v1"

headers = {
    "X-Api-Key": API_KEY,
    "Content-Type": "application/json"
}

# Starta autentisering
response = requests.post(
    f"{BASE_URL}/auth/bankid/start",
    headers=headers,
    json={"endUserIp": "192.168.1.1"}
)
session = response.json()

# Polla för status
while True:
    result = requests.post(
        f"{BASE_URL}/auth/{session['sessionId']}/poll",
        headers=headers
    ).json()

    if result["status"] == "complete":
        print(f"Autentiserad: {result['user']['name']}")
        break
    elif result["status"] == "failed":
        print(f"Misslyckades: {result['hintCode']}")
        break

    time.sleep(2)

Webhooks

Istället för att polla kan du ta emot webhooks när sessioner slutförs. Se Webhook-dokumentationen för mer information.