API Dokümantasyonu

İsveç BankID vekaletlerini programatik doğrula. Anında sandbox, BankID-imzalı onboarding ile prodüksiyon.

Hızlı başlangıç

Kayıt ol, dashboard'dan sandbox anahtarını al ve ilk vekaletini beş dakikadan kısa sürede doğrula.

Sandbox anahtarları (mk_test_ ön ekli) anında çalışır ve asla kotayı tüketmez. Live anahtarları (mk_live_) BankID-imzalı onboarding sonrası verilir.

Sandbox anahtarı al

Kimlik Doğrulama

Anahtar ID'ni ve secret'ını istek başlıkları olarak gönder. Middleware sandbox'ı ön eke göre prodüksiyondan ayırır ve org IP whitelist'i dışındaki anahtarları reddeder (ayarlandıysa).

http
GET /api/external/delegations HTTP/1.1
Host: api.minionapp.se
X-Api-Key: mk_live_a1b2c3d4e5
X-Api-Secret: <your secret>

Endpoint'ler

V1'de iki okuma endpoint'i. Yazma endpoint'leri (oluştur / kabul et / iptal et) son kullanıcı arayüzleridir ve API anahtarı değil BankID gerektirir.

GET/api/external/delegations

List delegations granted to your organization. Filter by status (Active, Accepted, Revoked, Expired).

statusstring?Filter (default: Active)
pageintDefault 1
pageSizeintDefault 50, max 200
GET/api/external/delegations/{verificationCode}

Look up a single delegation by its 8-character verification code. Useful for verifying that a delegation a user shared is genuinely active in your org.

verificationCodestringPath param, e.g. AB3K7XYZ

Webhooks

Ayarlar'da bir callback URL ayarla; vekalet olaylarında imzalı JSON POST ediyoruz. Her istek X-Minion-Signature başlığında HMAC-SHA256 imzası taşır. İlk kayıtta aldığın org-bazlı secret ile doğrula.

http
POST /webhooks/minion HTTP/1.1
Host: your-server.com
Content-Type: application/json
X-Minion-Signature: sha256=4f3c...e2a1
X-Minion-Event: delegation.accepted
X-Minion-Delivery: 8d2c-...

{
  "event": "delegation.accepted",
  "delegationId": "9f8a7b6c-...",
  "verificationCode": "AB3K7XYZ",
  "occurredAt": "2026-05-02T11:30:00Z"
}

expectedSig = HMAC_SHA256(secret, rawBody) — sabit-zaman eşitlikle karşılaştır.

Başarısız teslimatlar (non-2xx, timeout veya ulaşılamayan host) üstel backoff ile 5 kez yeniden denenir: 1s, 5s, 30s, 5dk, 30dk.

Rate limit ve kota

Anahtar başına rate limit planından gelir. Her başarılı prodüksiyon çağrısı org sahibinin aylık kotasından bir tüketir. Sandbox çağrıları kotayı tüketmez ve 1 000 req/gün ile sınırlıdır.

  • Free — 100 req/min, 1 000 req/mo
  • Starter — 600 req/min, 10 000 req/mo
  • Business — 1 800 req/min, 50 000 req/mo
  • Enterprise — custom

Örnekler

Aynı akış üç dilde.

curl
curl -H "X-Api-Key: mk_test_a1b2c3" \
     -H "X-Api-Secret: ${MINION_SECRET}" \
     https://api.minionapp.se/api/external/delegations?status=Active
javascript
const res = await fetch('https://api.minionapp.se/api/external/delegations?status=Active', {
  headers: {
    'X-Api-Key': 'mk_test_a1b2c3',
    'X-Api-Secret': process.env.MINION_SECRET,
  },
});
const { items } = await res.json();
python
import os, requests

r = requests.get(
    'https://api.minionapp.se/api/external/delegations',
    params={'status': 'Active'},
    headers={
        'X-Api-Key': 'mk_test_a1b2c3',
        'X-Api-Secret': os.environ['MINION_SECRET'],
    },
)
items = r.json()['items']

Ayrıca bakınız