{
 "categories": [
  "identity",
  "public-sector",
  "fintech"
 ],
 "deployment": "saas",
 "evidence": [
  {
   "date": "2026-08-31",
   "fact": "homepage",
   "note": "St\u00f8 AS presents BankID as the identification and signing service used by Norwegian banks, the public sector, and private businesses, with 4.6 million users.",
   "source": "https://bankid.no/en/about-us",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "vendor",
   "note": "The about page states that from May 2025 the company name is St\u00f8 AS, after BankID BankAxept AS. St\u00f8 maintains and develops BankID and sells it through resellers.",
   "source": "https://bankid.no/en/about-us",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "license",
   "note": "St\u00f8 sells BankID to Norwegian businesses through a reseller system. Banks issue BankID to private customers.",
   "source": "https://bankid.no/en/about-us",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.api.exists",
   "note": "The developer hub documents integration through BankID with biometrics, BankID OpenID Connect, and BankID Signing.",
   "source": "https://developer.bankid.no/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.api.kinds[0]",
   "note": "BankID documents OpenID Connect authorization-code with PKCE as the login integration, using discovery at the OIDC well-known endpoint.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/getting-started/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.api.kinds[1]",
   "note": "The token endpoint documents authorization_code, client_credentials, and refresh_token OAuth 2.0 grants.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/api/token/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.api.kinds[2]",
   "note": "BankID Signing WYSIWYS is a REST merchant API at api.esign-stoe.cloud for creating sign orders, polling status, and downloading signed PDFs.",
   "source": "https://developer.bankid.no/bankid-esign-provider/apis/signdoc/signdoc-intro/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.api.auth[0]",
   "note": "BankID recommends private_key_jwt for server-to-server calls to token and introspect. The merchant must send a JWKS public key to BankID support.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/core-concepts/client-authentication/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.api.auth[1]",
   "note": "BankID also supports client_secret_basic using the HTTP Basic authentication scheme.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/core-concepts/client-authentication/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.api.auth[2]",
   "note": "BankID also supports client_secret_post by sending client_id and client_secret in the request body.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/core-concepts/client-authentication/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.api.coverage",
   "note": "The documented surface is login plus signing (WYSIWYS, CSC, timestamping, B2B, verified confirmation). It is an IdP and signing platform, not a general application CRUD API. BankID Server and SignDoc OIDC are marked deprecated.",
   "source": "https://developer.bankid.no/bankid-esign-provider/introduction/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.api.docs",
   "note": "Opened as the current BankID OIDC getting-started guide for authorization-code with PKCE.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/getting-started/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.extensibility.scripting[0]",
   "note": "Relying parties redirect to the authorization endpoint, exchange the code at token, and validate the ID token against JWKS.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/getting-started/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.extensibility.scripting[1]",
   "note": "Merchants call BankID Signing with an OIDC client that has esign, esign/csc, esign/qtsa, esign/nnin, or esign/b2b scopes.",
   "source": "https://developer.bankid.no/bankid-esign-provider/getting-started/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.data_access.export[0]",
   "note": "Authorization-code token responses return id_token, access_token, and refresh_token.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/api/token/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.data_access.export[1]",
   "note": "Client-credentials responses return a JWT access token for signing scopes such as signdoc/read_write.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/api/token/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.data_access.export[2]",
   "note": "After signing, the merchant downloads signed PAdES documents from the WYSIWYS API with DELETE /signdoc/pades.",
   "source": "https://developer.bankid.no/bankid-esign-provider/apis/signdoc/signdoc-intro/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.data_access.import[0]",
   "note": "Merchants create a sign order by POSTing PDF documents to the WYSIWYS API. Limits include 20 MB Base64 per document, 30 documents, and 100 MB package size.",
   "source": "https://developer.bankid.no/bankid-esign-provider/apis/signdoc/signdoc-intro/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "modalities.agent_docs.llms_txt",
   "note": "https://developer.bankid.no/llms.txt returned HTTP 404 on 2026-08-31.",
   "source": "https://developer.bankid.no/llms.txt",
   "tier": "scraped"
  },
  {
   "date": "2026-08-31",
   "fact": "verdict.scores.api",
   "note": "OIDC and Signing are documented and usable in production, but an OIDC client is created only after a BankID partner provisions it. That reseller gate, plus commercial billing through the partner, keeps the path at useful-with-material-limits rather than the broader self-service IdP tier.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/resources/provisioning/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "freshness.watch[0].url",
   "note": "Opened and verified as the current BankID developer hub listing biometrics, OIDC, and Signing.",
   "source": "https://developer.bankid.no/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "freshness.watch[1].url",
   "note": "Opened and verified as the current OIDC authorization-code with PKCE guide, including partner-issued client credentials as a prerequisite.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/getting-started/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "freshness.watch[2].url",
   "note": "Opened and verified as the current client-authentication page listing private_key_jwt, client_secret_basic, and client_secret_post.",
   "source": "https://developer.bankid.no/bankid-oidc-provider/core-concepts/client-authentication/",
   "tier": "declared"
  },
  {
   "date": "2026-08-31",
   "fact": "freshness.watch[3].url",
   "note": "Opened and verified as the current BankID Signing access guide, including scopes and client-credentials token examples.",
   "source": "https://developer.bankid.no/bankid-esign-provider/getting-started/",
   "tier": "declared"
  }
 ],
 "freshness": {
  "last_verified": "2026-08-31",
  "volatility": "medium",
  "watch": [
   {
    "type": "docs",
    "url": "https://developer.bankid.no/"
   },
   {
    "type": "docs",
    "url": "https://developer.bankid.no/bankid-oidc-provider/getting-started/"
   },
   {
    "type": "docs",
    "url": "https://developer.bankid.no/bankid-oidc-provider/core-concepts/client-authentication/"
   },
   {
    "type": "docs",
    "url": "https://developer.bankid.no/bankid-esign-provider/getting-started/"
   }
  ]
 },
 "homepage": "https://bankid.no/en/about-us",
 "id": "bankid",
 "license": "commercial",
 "modalities": {
  "agent_docs": {
   "llms_txt": false
  },
  "api": {
   "auth": [
    "private-key-jwt",
    "client-secret-basic",
    "client-secret-post"
   ],
   "coverage": "partial",
   "docs": "https://developer.bankid.no/bankid-oidc-provider/getting-started/",
   "exists": true,
   "kinds": [
    "openid-connect",
    "oauth2",
    "rest"
   ]
  },
  "cli": {
   "exists": "unknown"
  },
  "computer_use": {
   "issues": [],
   "viability": "unknown"
  },
  "data_access": {
   "export": [
    "id-token",
    "access-token",
    "signed-pdf"
   ],
   "import": [
    "pdf-sign-order"
   ]
  },
  "extensibility": {
   "scripting": [
    "oidc-relying-party",
    "esign-merchant"
   ],
   "webhooks": "unknown"
  },
  "integrations": {
   "make": "unknown",
   "n8n": "unknown",
   "power_automate": "unknown",
   "zapier": "unknown"
  },
  "mcp": {
   "first_party": "unknown",
   "third_party": [],
   "verdict": "unknown"
  },
  "rpa": {
   "drivability": "unknown",
   "notes": "No repeatable UI probe was run. BankID is an eID and signing service, not a line-of-business application. The documented path is a partner-provisioned OIDC client calling authorize and token, plus the BankID Signing APIs for documents.\n",
   "ui_stack": [
    "web-dom"
   ],
   "vendor_support": []
  },
  "sdk": {
   "exists": "unknown",
   "languages": [],
   "official": "unknown"
  }
 },
 "name": "BankID",
 "platforms": [
  "web"
 ],
 "related": {
  "alternatives": [
   "id-porten",
   "feide",
   "helseid",
   "vipps-mobilepay"
  ],
  "our_products": []
 },
 "schema_version": 1,
 "score_version": 1,
 "status": "active",
 "vendor": "St\u00f8 AS",
 "verdict": {
  "best_path": "api",
  "scores": {
   "api": 6,
   "cli": null,
   "computer_use": null,
   "integrations": null,
   "mcp": null,
   "overall": 6,
   "rpa": null
  },
  "summary": "BankID is automatable as St\u00f8 AS's bank-issued Norwegian eID and signing service, not as ID-porten, Feide, HelseID, or Vipps MobilePay. Login uses OpenID Connect authorization-code with PKCE. The token endpoint also issues client-credentials tokens for BankID Signing. Client authentication is private_key_jwt (recommended), client_secret_basic, or client_secret_post. Signing is a separate REST surface: WYSIWYS for PAdES PDF sign orders, CSC for Cloud Signature Consortium hash signing, plus timestamping and B2B seal APIs. B2B signing requires DPoP and private_key_jwt. Live clients are not self-service. A reseller or BankID partner must provision client_id and client_secret for test and production. That agreement gate is the material limit on the otherwise documented API. BankID is often used through ID-porten in public services; this record is the BankID service itself. First-party MCP ownership is not established. Computer-use viability is unassessed.\n"
 }
}