Utveckla och Testa

Utvecklarportalen innehåller stöd för att testköra APIer direkt (i sandlådan). Att ansluta en applikation kräver mer förberedelser och ställer dessutom krav på applikationen som sådan.

Förutsättningar

För att testköra APIer så förutsätts att du har:

  1. Ett användarkonto på denna utvecklarportal.
  2. Ett giltigt produktabonnemang.
  3. För icke-öppna APIer måste även BankID-applikationen med testlegitimationer vara installerad.
    • BankID-applikationen måste vara lokalt installerad och konfigurerad.
    • Notera särskilt steg 3 i konfigurationsanvisningen och filen som aktiverer testläge CavaServerSelector.txt.
    • Testlegitimationer måste laddas ned och installeras (se instruktion i det nedladdade ZIP-arkivet).

Anslutingskrav på OAuth2-auktoriserad applikation

  1. Applikationen måste vara registrerad i utvecklarportalen där OAuth2 credentials delges utvecklaren via mail.
    • När man registrerar en applikation är det motsvarande redirect_uri som anges i Url-fältet.
    • Applikationen tilldelas ett client_id. Detta id är globalt unikt och ändras inte över tiden.
    • Applikationen tilldelas en client_secret. Secret kan genereras om och skiljer sig också mellan utvecklartjänsten och skarpa COSMIC-anslutningar.
  2. Applikationen måste implementera OAuth2-flödet Authorization Code Grant.
    • Applikationen måste ange korrekt scope för APIet ifråga (se respektive API-operation).
  3. För varje API-anrop anges gitliga värden för API-nyckel och OAuth2 Access-token.
    • API-nyckel anges i HTTP header Ocp-Apim-Subscription-Key
    • Access-token anges i HTTP header Authorization
Se även OpenID Connect/OAuth2 profil.

Backoff-situationer

Förutom kraven bör applikationens logik vara medveten om att det kan uppstå så kallade backoff-situationer. Dvs. en policy om max antal anrop per tidsenhet har överskridits. HTTP-felkoden för dessa fall är 429 Too Many Requests [RFC6585]. HTTP-headern Retry-After i svaret indikerar antal sekunder tills nästa anrop kan utföras utan att blockeras, och applikationen bör därför avvakta med API-anrop under denna tid.
Exempel:
Retry-After: 8

Korrelationsidentitet för spårbarhet

API-tjänsten returnerar HTTP-header X-COS-CORRELATION-ID i svaret. Detta kan exempelvis användas vid felsökning i tjänsten. Det rekommenderas därför att applikationen loggar korrelationsidentiteten i sin åtkomstlog.
Exempel:
X-COS-CORRELATION-ID: 33b0a803-5672-4568-8a2f-1dceab3e2c67