---
updatedAt: 2026-08-28T15:01:18.000Z
agentTools:
  projectIndex: https://developer.getbright.se/llms.txt
---

# BankId QR code (optional)

Returns a base64 encoded image. This endpoint is used if you have implemented the QR code generation process where Bright backend will frequently fetch update codes to display to the end-user.

**DO NOT RATE LIMIT THIS ENDPOINT** The QR code is updated every second.

*Endpoint is built based on the following logic:* [QR Code Generation](https://developers.bankid.com/getting-started/frontend/qr-code)

<img src="https://www.bankid.com/assets/bankid/rp/guides-img/RP_QR0.png" width="200">


# OpenAPI definition

```json
{
  "openapi": "3.1.0",
  "info": {
    "title": "Bright Kit",
    "version": "v1.0",
    "contact": {
      "name": "Bright Energy",
      "url": "https://www.getbright.se",
      "email": "support@getbright.se"
    },
    "description": "<br>\n<img src=\"https://bright-documentation-assets.s3.eu-north-1.amazonaws.com/bright-kit-logo.svg\" width=\"300\">\n\nThe following API specification is a blueprint for Bright Energy partners.\n\nPartners are required to create and expose these endpoints only to Bright Energy for fetching user data. This enables users to access your applications and all embedded features.\n",
    "license": {
      "name": "MIT",
      "url": "https://opensource.org/licenses/MIT"
    },
    "summary": "Bright Kit"
  },
  "servers": [
    {
      "url": "https://{kitEnvironment}.{kitDomain}/{kitBasePath}",
      "description": "Variable based url structure.\n\n`kitDomain`: The domain the Bright Kit is deployed to.\n\n`kitEnvironment`: The environment to target your requests. `staging` shall be used for integration and testing purposes.\n\n`kitBasePath`: Use v1 currently.\n",
      "variables": {
        "kitDomain": {
          "default": "domain"
        },
        "kitEnvironment": {
          "default": "staging"
        },
        "kitBasePath": {
          "default": "v1"
        }
      }
    }
  ],
  "tags": [
    {
      "name": "bankId",
      "description": "<img src=\"https://bright-documentation-assets.s3.eu-north-1.amazonaws.com/BankID_logo.svg\" width=\"300\">\n\n## Swedish BankId\nIn Sweden the most well known login solution is [BankId](https://www.bankid.com/).\n\nBankID is a common way to identify yourself in digital environments. You do not have to create accounts with passwords with different actors, and can instead use the same secure solution for everyone. Like showing your ID, but digitally.\n\nIn order for your end-users to trust the application and login securely, we relay all BankId API calls to your backend so the end-user will see your company name and certificate in the BankId app.\n",
      "externalDocs": {
        "url": "https://www.bankid.com/utvecklare/guider/teknisk-integrationsguide/rp-introduktion"
      }
    }
  ],
  "security": [
    {
      "apiKey": []
    },
    {
      "bearerAuth": []
    }
  ],
  "externalDocs": {
    "description": "Bright Energy Developer Hub",
    "url": "https://developer.getbright.se"
  },
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "description": "Can be the obtained token from an approved authorization method (Oauth or OpenId) or a pre-generated token given to Bright Energy. Tokens must be environment specific. JWT supported."
      },
      "apiKey": {
        "type": "apiKey",
        "name": "apiKey",
        "in": "header",
        "description": "API key that is environment specific."
      }
    },
    "responses": {
      "BadRequest": {
        "description": "Bad Request",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            },
            "example": {
              "name": "BadRequestError",
              "message": "The request was malformed.",
              "status": 400,
              "error": true,
              "key": "BadRequestError",
              "uid": "y9g1f21f-a740-4346-9a79-3800fe8c8644"
            }
          }
        }
      },
      "Forbidden": {
        "description": "Forbidden",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            },
            "example": {
              "name": "ForbiddenError",
              "message": "Invalid Token.",
              "status": 401,
              "error": true,
              "key": "TOKEN_INVALID",
              "uid": "a9c1f21f-a740-4346-9a79-3800fe8c8652"
            }
          }
        }
      }
    },
    "schemas": {
      "Error": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "examples": [
              "GenericError"
            ]
          },
          "message": {
            "type": "string",
            "minLength": 1,
            "examples": [
              "An error of some origin has occurred."
            ]
          },
          "status": {
            "type": "number",
            "format": "int32",
            "minimum": 400,
            "maximum": 600,
            "examples": [
              400
            ]
          },
          "error": {
            "type": "boolean",
            "examples": [
              true
            ]
          },
          "key": {
            "type": "string",
            "minLength": 1,
            "examples": [
              "GenericError"
            ]
          },
          "uid": {
            "type": "string",
            "minLength": 1,
            "examples": [
              "25198069-6171-410c-bfed-5e0666402c08"
            ]
          }
        },
        "required": [],
        "title": "Error",
        "description": "The standard error object used in API responses",
        "minProperties": 6
      }
    },
    "parameters": {
      "bankIdOrderReference": {
        "schema": {
          "type": "string",
          "minLength": 1,
          "format": "uuid",
          "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
          "examples": [
            "131daac9-16c6-4618-beb0-365768f37288"
          ]
        },
        "required": true,
        "in": "query",
        "name": "orderRef",
        "description": "The reference used for all bankId requests after creating a new */auth or */sign process."
      }
    }
  },
  "paths": {
    "/bankid/qr": {
      "get": {
        "operationId": "get-bankId-qr",
        "summary": "BankId QR code (optional)",
        "description": "Returns a base64 encoded image. This endpoint is used if you have implemented the QR code generation process where Bright backend will frequently fetch update codes to display to the end-user.\n\n**DO NOT RATE LIMIT THIS ENDPOINT** The QR code is updated every second.\n\n*Endpoint is built based on the following logic:* [QR Code Generation](https://developers.bankid.com/getting-started/frontend/qr-code)\n\n<img src=\"https://www.bankid.com/assets/bankid/rp/guides-img/RP_QR0.png\" width=\"200\">\n",
        "tags": [
          "bankId"
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/bankIdOrderReference"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string",
                  "minLength": 1
                },
                "example": "data:image/png;base64,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"
              }
            }
          },
          "400": {
            "$ref": "#/components/responses/BadRequest"
          },
          "401": {
            "$ref": "#/components/responses/Forbidden"
          }
        }
      }
    }
  }
}
```