> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scanova.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Ein QR-Code-Bild herunterladen

> GET /qrcode/{qrid}/download/

Lädt ein gerendertes QR-Code-Bild auf dem **Management-API**-Host (`management.scanova.io`) herunter, authentifiziert mit Ihrem rohen Management-API-Schlüssel.

```
GET https://management.scanova.io/qrcode/{qrid}/download/
Authorization: 401f7ac837da42b97f613d789819ff93537bee6a
```

<ParamField path="qrid" type="string" required>
  Die `qrid` des QR-Codes, z. B. `QR7K9M2XN`.
</ParamField>

<Tip>
  Auch erreichbar unter `/qr/{qrid}/download/` — dieselbe View, dasselbe Verhalten.
</Tip>

### Query-Parameter

<ParamField query="file" type="string" default="png">
  Ausgabeformat: `png`, `jpg`, `jpeg`, `svg`, `pdf`, `eps` oder `ps`.
</ParamField>

<ParamField query="size" type="integer" default="300">
  Bildgröße in Pixeln, von `10` bis `2400`.
</ParamField>

<ParamField query="for_print" type="boolean" default="false">
  Bei `true` wird ein druckfertiges PDF zurückgegeben, das lokal generiert wird (nicht über den Bildgenerator-Dienst), und `file` wird ignoriert.
</ParamField>

<ParamField query="info" type="string">
  Optionaler Override des vorkodierten Payloads. Dynamische QR-Codes benötigen dies nicht — es existiert für statische QR-Codes, da dieses Backend die clientseitige Datenkodierungslogik des Frontends für statische Typen nicht eigenständig reproduziert.
</ParamField>

## Antwort

Eine erfolgreiche Anfrage gibt das Bild als Binärdatei-Download zurück (`Content-Disposition: attachment`), mit einem Dateinamen, der aus dem Namen des QR-Codes abgeleitet wird (oder aus seiner `qrid`, falls unbenannt).

<RequestExample>
  ```bash cURL theme={null}
  curl -G "https://management.scanova.io/qrcode/QR7K9M2XN/download/" \
    -H "Authorization: 401f7ac837da42b97f613d789819ff93537bee6a" \
    -d file=svg \
    -d size=600 \
    -o "product-launch-flyer.svg"
  ```
</RequestExample>

## Fehler

<ResponseField name="400 Bad Request">
  Wird zurückgegeben, wenn `size` außerhalb von `10`–`2400` liegt oder `file` keinem der unterstützten Formate entspricht.
</ResponseField>

<ResponseField name="404 Not Found">
  Die `qrid` existiert nicht oder gehört nicht zu dem Konto, zu dem der Schlüssel gehört.
</ResponseField>

<ResponseField name="503 Service Unavailable">
  Der vorgelagerte Bildgenerator-Dienst ist nicht erreichbar. Dies ist kein Client-Fehler — versuchen Sie es erneut und kontaktieren Sie den Support, falls das Problem weiterhin besteht.
</ResponseField>

## Verwandte Themen

* [QR-Codes auflisten / erstellen](/de/api-reference/management-api/qr/list) — finden Sie die `qrid`, die Sie hier herunterladen möchten.
* [Einen QR-Code abrufen, aktualisieren, löschen](/de/api-reference/management-api/qr/retrieve) — rufen Sie die vollständigen Details eines QR-Codes ab statt seines gerenderten Bilds.


## OpenAPI

````yaml api-reference/openapi/management-api.json GET /qrcode/{qrid}/download/
openapi: 3.1.0
info:
  title: Scanova Management API (v2)
  description: >-
    The complete Scanova Management API — every endpoint available at
    management.scanova.io (QR codes, folders, tags, leads, forms, analytics,
    plans, shared users & roles), plus the token-creation and usage-stats
    endpoints used to authenticate against it. Every path and request/response
    shape below was verified live against a real API key and the actual running
    backend (Phase 7, 2026-08-16) — not guessed from reading urls.py alone.
  version: 2.0.0
servers:
  - url: https://management.scanova.io
    description: Management API — QR/folder/tag/lead/form/analytics/plans endpoints
security:
  - apiKeyAuth: []
paths:
  /qrcode/{qrid}/download/:
    get:
      summary: Download a QR code image
      operationId: downloadManagedQrCode
      parameters:
        - name: qrid
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: QR image binary
components:
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: Authorization
      description: >-
        Send your Management API key as the raw value of the Authorization
        header — no "Bearer " or "Token " prefix, and no other characters.
        Example: `Authorization: 401f7ac837da42b97f613d789819ff93537bee6a`. A
        header containing more than one space-separated part is rejected
        outright. Requests also require the request's Host header to be the
        management API host (e.g. management.scanova.io) — the same key sent to
        the regular API host will not authenticate.

````