> ## 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.

# Télécharger l'image d'un QR code

> GET /qrcode/{qrid}/download/

Télécharge une image de QR code générée sur l'hôte **Management API** (`management.scanova.io`), authentifiée avec votre clé Management API brute.

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

<ParamField path="qrid" type="string" required>
  Le `qrid` du QR code, par ex. `QR7K9M2XN`.
</ParamField>

<Tip>
  Également accessible via `/qr/{qrid}/download/` — même vue, même comportement.
</Tip>

### Paramètres de requête

<ParamField query="file" type="string" default="png">
  Format de sortie : `png`, `jpg`, `jpeg`, `svg`, `pdf`, `eps` ou `ps`.
</ParamField>

<ParamField query="size" type="integer" default="300">
  Taille de l'image en pixels, de `10` à `2400`.
</ParamField>

<ParamField query="for_print" type="boolean" default="false">
  Lorsque `true`, renvoie un PDF prêt à imprimer généré localement (et non via le service générateur d'images) et ignore `file`.
</ParamField>

<ParamField query="info" type="string">
  Surcharge optionnelle de la charge utile pré-encodée. Les QR codes dynamiques n'en ont pas besoin — ce paramètre existe pour les QR codes statiques, car ce backend ne reproduit pas indépendamment la logique d'encodage des données côté client du frontend pour les types statiques.
</ParamField>

## Réponse

Une requête réussie renvoie l'image sous forme de téléchargement de fichier binaire (`Content-Disposition: attachment`), avec un nom de fichier dérivé du nom du QR code (ou de son `qrid` s'il n'est pas nommé).

<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>

## Erreurs

<ResponseField name="400 Bad Request">
  Renvoyée lorsque `size` est en dehors de la plage `10`–`2400`, ou que `file` n'est pas l'un des formats pris en charge.
</ResponseField>

<ResponseField name="404 Not Found">
  Le `qrid` n'existe pas, ou n'appartient pas au compte auquel appartient la clé.
</ResponseField>

<ResponseField name="503 Service Unavailable">
  Le service générateur d'images en amont est inaccessible. Il ne s'agit pas d'une erreur côté client — réessayez, et contactez le support si le problème persiste.
</ResponseField>

## Voir aussi

* [Lister / créer des QR codes](/fr/api-reference/management-api/qr/list) — trouvez le `qrid` à télécharger ici.
* [Récupérer, mettre à jour, supprimer un QR code](/fr/api-reference/management-api/qr/retrieve) — obtenez tous les détails d'un QR code plutôt que son image générée.


## 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.

````