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

# 下载二维码图片

> GET /qrcode/{qrid}/download/

在 **Management API** 主机（`management.scanova.io`）上下载渲染好的二维码图片，使用您的原始 Management API 密钥进行身份验证。

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

<ParamField path="qrid" type="string" required>
  该二维码的 `qrid`，例如 `QR7K9M2XN`。
</ParamField>

<Tip>
  也可以通过 `/qr/{qrid}/download/` 访问——同一个视图，行为相同。
</Tip>

### 查询参数

<ParamField query="file" type="string" default="png">
  输出格式：`png`、`jpg`、`jpeg`、`svg`、`pdf`、`eps` 或 `ps`。
</ParamField>

<ParamField query="size" type="integer" default="300">
  图片尺寸（像素），范围从 `10` 到 `2400`。
</ParamField>

<ParamField query="for_print" type="boolean" default="false">
  为 `true` 时，返回一份在本地生成（而非通过图像生成服务）的可打印 PDF，并忽略 `file` 参数。
</ParamField>

<ParamField query="info" type="string">
  可选的预编码负载覆盖值。动态二维码不需要此参数——它是为静态二维码而存在的，因为该后端并不会独立复现前端针对静态类型的客户端数据编码逻辑。
</ParamField>

## 响应

成功的请求会以二进制文件下载的形式返回图片（`Content-Disposition: attachment`），文件名取自该二维码的名称（若未命名则取其 `qrid`）。

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

## 错误

<ResponseField name="400 Bad Request">
  当 `size` 超出 `10`–`2400` 范围，或 `file` 不是受支持的格式之一时返回。
</ResponseField>

<ResponseField name="404 Not Found">
  该 `qrid` 不存在，或不属于该密钥所属的账户。
</ResponseField>

<ResponseField name="503 Service Unavailable">
  上游图像生成服务不可访问。这不是客户端错误——请重试，如果持续出现请联系支持团队。
</ResponseField>

## 相关内容

* [列出 / 创建二维码](/zh/api-reference/management-api/qr/list) —— 查找要在此处下载的 `qrid`。
* [获取、更新、删除二维码](/zh/api-reference/management-api/qr/retrieve) —— 获取二维码的完整详情，而不是其渲染后的图片。


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

````