# The QR code of the unit's GS1 Digital Link

> `GET /batteries/{batteryId}/passport/qr` · Scope: `read` · operationId `getPassportQr`

Any member. Rendered on demand from `gs1_digital_link` (error correction M, quiet zone of four
modules). Only once the identifiers are locked (`409 conflict` before).

## Pfad-Parameter

- **batteryId** `string (uuid)` (erforderlich)

## Query-Parameter

- **format** `string` (Standard: "png", einer von: `png`, `svg`)
- **size** `integer` (Standard: 512): Width and height of the PNG in pixels (ignored for SVG, which scales).

## Antworten

### 200 (`image/png`, `image/svg+xml`)

The image.

`any`

### 400 (`application/problem+json`)

The request is malformed or failed validation (`validation_error`), or a token is invalid or expired (`invalid_token`).

### 401 (`application/problem+json`)

The API key is missing, unknown or revoked (`unauthenticated`).

### 403 (`application/problem+json`)

The API key may not perform this action (`forbidden`): it lacks the operation's scope, or the action needs more than a viewer's rights.

### 404 (`application/problem+json`)

The resource does not exist in the organisation of the API key, or the public passport is unknown (`not_found`).

### 409 (`application/problem+json`)

The request conflicts with the current state (`conflict`), e.g. a stale `If-Match` version.

### default (`application/problem+json`)

Any other problem, e.g. `internal_error`.

## Beispiel

```bash title="cURL"
curl -X GET "https://passport.kabin.sh/api/v1/batteries/{batteryId}/passport/qr" \
  -H "Authorization: Bearer $BATTERYPASS_API_KEY"
```
