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

# Update a QR Code

> Update a QR Code for the authenticated workspace. If there's no change, returns it as it is.



## OpenAPI

````yaml put /qrcodes/{qrcodeId}
openapi: 3.0.3
info:
  title: CodeQR.io API
  description: >-
    SaaS platform for creating dynamic QR Codes, trackable short links, and
    interactive pages, focused on automation, analytics, and engagement.
  version: 0.0.1
  contact:
    name: CodeQR.io Support
    email: contact@codeqr.io
    url: https://codeqr.io/api
  license:
    name: AGPL-3.0 license
servers:
  - url: https://api.codeqr.io
    description: Production API
security: []
paths:
  /qrcodes/{qrcodeId}:
    put:
      tags:
        - QR Codes
      summary: Update a QR Code
      description: >-
        Update a QR Code for the authenticated workspace. If there's no change,
        returns it as it is.
      operationId: updateQRCode
      parameters:
        - in: path
          name: qrcodeId
          description: >-
            The id of the QR Code to update. You may use either `qrcodeId`
            (obtained via `/qrcodes/info` endpoint) or `externalId` prefixed
            with `ext_`.
          schema:
            type: string
            description: >-
              The id of the QR Code to update. You may use either `qrcodeId`
              (obtained via `/qrcodes/info` endpoint) or `externalId` prefixed
              with `ext_`.
          required: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                domain:
                  type: string
                  description: >-
                    The domain of the QR code. If not provided, the main domain
                    of the project will be used (or `codeqr.link` if the project
                    does not have domains).
                key:
                  type: string
                  description: >-
                    The slug of the QR code. If not provided, a random slug of 7
                    characters will be generated.
                prefix:
                  type: string
                  description: >-
                    The prefix for the randomly generated key. If provided, the
                    key will be prefixed with this value.
                externalId:
                  type: string
                  nullable: true
                  minLength: 1
                  maxLength: 255
                  description: >-
                    This is the ID of the QR code in your database. If defined,
                    it can be used to identify the QR code in the future. It
                    must be prefixed with `ext_` when passed as a query
                    parameter.
                  example: '123456'
                trackConversion:
                  type: boolean
                  default: false
                  description: If should track conversions for the QR code.
                templateId:
                  type: string
                  nullable: true
                  description: >-
                    ID of a QR code (in the same project) marked as a template.
                    Its customization fields (colors, logo, pattern, shape,
                    frame) will be applied to the new QR code unless explicitly
                    overridden.
                useAsTemplate:
                  type: boolean
                  default: false
                  description: Whether this QR code should be used as a reusable template.
                archived:
                  type: boolean
                  default: false
                  description: If the QR code is archived.
                expiresAt:
                  type: string
                  nullable: true
                  format: date-time
                  description: >-
                    The date and time the QR code will expire in ISO-8601
                    format. Must be in the future.
                expiredUrl:
                  type: string
                  nullable: true
                  description: The URL to redirect when the QR code expires.
                password:
                  type: string
                  nullable: true
                  description: >-
                    The password required to access the destination URL of the
                    QR code.
                proxy:
                  type: boolean
                  default: false
                  description: If the QR code uses the custom link preview feature.
                title:
                  type: string
                  nullable: true
                  description: >-
                    The title of the QR code generated via
                    `api.codeqr.io/metatags`. Will be used for custom link
                    preview if `proxy` is true.
                description:
                  type: string
                  nullable: true
                  description: >-
                    The description of the QR code generated via
                    `api.codeqr.io/metatags`. Will be used for custom link
                    preview if `proxy` is true.
                image:
                  type: string
                  nullable: true
                  description: >-
                    The image of the QR code generated via
                    `api.codeqr.io/metatags`. Will be used for custom link
                    preview if `proxy` is true.
                rewrite:
                  type: boolean
                  default: false
                  description: If the QR code uses link cloaking.
                ios:
                  type: string
                  nullable: true
                  description: >-
                    The destination URL for iOS for the QR code for device
                    targeting iOS.
                android:
                  type: string
                  nullable: true
                  description: >-
                    The destination URL for Android for the QR code for device
                    targeting Android.
                geo:
                  type: object
                  nullable: true
                  properties:
                    AF:
                      type: string
                    AL:
                      type: string
                    DZ:
                      type: string
                    AS:
                      type: string
                    AD:
                      type: string
                    AO:
                      type: string
                    AI:
                      type: string
                    AQ:
                      type: string
                    AG:
                      type: string
                    AR:
                      type: string
                    AM:
                      type: string
                    AW:
                      type: string
                    AU:
                      type: string
                    AT:
                      type: string
                    AZ:
                      type: string
                    BS:
                      type: string
                    BH:
                      type: string
                    BD:
                      type: string
                    BB:
                      type: string
                    BY:
                      type: string
                    BE:
                      type: string
                    BZ:
                      type: string
                    BJ:
                      type: string
                    BM:
                      type: string
                    BT:
                      type: string
                    BO:
                      type: string
                    BA:
                      type: string
                    BW:
                      type: string
                    BV:
                      type: string
                    BR:
                      type: string
                    IO:
                      type: string
                    BN:
                      type: string
                    BG:
                      type: string
                    BF:
                      type: string
                    BI:
                      type: string
                    KH:
                      type: string
                    CM:
                      type: string
                    CA:
                      type: string
                    CV:
                      type: string
                    KY:
                      type: string
                    CF:
                      type: string
                    TD:
                      type: string
                    CL:
                      type: string
                    CN:
                      type: string
                    CX:
                      type: string
                    CC:
                      type: string
                    CO:
                      type: string
                    KM:
                      type: string
                    CG:
                      type: string
                    CD:
                      type: string
                    CK:
                      type: string
                    CR:
                      type: string
                    CI:
                      type: string
                    HR:
                      type: string
                    CU:
                      type: string
                    CY:
                      type: string
                    CZ:
                      type: string
                    DK:
                      type: string
                    DJ:
                      type: string
                    DM:
                      type: string
                    DO:
                      type: string
                    EC:
                      type: string
                    EG:
                      type: string
                    SV:
                      type: string
                    GQ:
                      type: string
                    ER:
                      type: string
                    EE:
                      type: string
                    ET:
                      type: string
                    FK:
                      type: string
                    FO:
                      type: string
                    FJ:
                      type: string
                    FI:
                      type: string
                    FR:
                      type: string
                    GF:
                      type: string
                    PF:
                      type: string
                    TF:
                      type: string
                    GA:
                      type: string
                    GM:
                      type: string
                    GE:
                      type: string
                    DE:
                      type: string
                    GH:
                      type: string
                    GI:
                      type: string
                    GR:
                      type: string
                    GL:
                      type: string
                    GD:
                      type: string
                    GP:
                      type: string
                    GU:
                      type: string
                    GT:
                      type: string
                    GN:
                      type: string
                    GW:
                      type: string
                    GY:
                      type: string
                    HT:
                      type: string
                    HM:
                      type: string
                    VA:
                      type: string
                    HN:
                      type: string
                    HK:
                      type: string
                    HU:
                      type: string
                    IS:
                      type: string
                    IN:
                      type: string
                    ID:
                      type: string
                    IR:
                      type: string
                    IQ:
                      type: string
                    IE:
                      type: string
                    IL:
                      type: string
                    IT:
                      type: string
                    JM:
                      type: string
                    JP:
                      type: string
                    JO:
                      type: string
                    KZ:
                      type: string
                    KE:
                      type: string
                    KI:
                      type: string
                    KP:
                      type: string
                    KR:
                      type: string
                    KW:
                      type: string
                    KG:
                      type: string
                    LA:
                      type: string
                    LV:
                      type: string
                    LB:
                      type: string
                    LS:
                      type: string
                    LR:
                      type: string
                    LY:
                      type: string
                    LI:
                      type: string
                    LT:
                      type: string
                    LU:
                      type: string
                    MO:
                      type: string
                    MG:
                      type: string
                    MW:
                      type: string
                    MY:
                      type: string
                    MV:
                      type: string
                    ML:
                      type: string
                    MT:
                      type: string
                    MH:
                      type: string
                    MQ:
                      type: string
                    MR:
                      type: string
                    MU:
                      type: string
                    YT:
                      type: string
                    MX:
                      type: string
                    FM:
                      type: string
                    MD:
                      type: string
                    MC:
                      type: string
                    MN:
                      type: string
                    MS:
                      type: string
                    MA:
                      type: string
                    MZ:
                      type: string
                    MM:
                      type: string
                    NA:
                      type: string
                    NR:
                      type: string
                    NP:
                      type: string
                    NL:
                      type: string
                    NC:
                      type: string
                    NZ:
                      type: string
                    NI:
                      type: string
                    NE:
                      type: string
                    NG:
                      type: string
                    NU:
                      type: string
                    NF:
                      type: string
                    MK:
                      type: string
                    MP:
                      type: string
                    'NO':
                      type: string
                    OM:
                      type: string
                    PK:
                      type: string
                    PW:
                      type: string
                    PS:
                      type: string
                    PA:
                      type: string
                    PG:
                      type: string
                    PY:
                      type: string
                    PE:
                      type: string
                    PH:
                      type: string
                    PN:
                      type: string
                    PL:
                      type: string
                    PT:
                      type: string
                    PR:
                      type: string
                    QA:
                      type: string
                    RE:
                      type: string
                    RO:
                      type: string
                    RU:
                      type: string
                    RW:
                      type: string
                    SH:
                      type: string
                    KN:
                      type: string
                    LC:
                      type: string
                    PM:
                      type: string
                    VC:
                      type: string
                    WS:
                      type: string
                    SM:
                      type: string
                    ST:
                      type: string
                    SA:
                      type: string
                    SN:
                      type: string
                    SC:
                      type: string
                    SL:
                      type: string
                    SG:
                      type: string
                    SK:
                      type: string
                    SI:
                      type: string
                    SB:
                      type: string
                    SO:
                      type: string
                    ZA:
                      type: string
                    GS:
                      type: string
                    ES:
                      type: string
                    LK:
                      type: string
                    SD:
                      type: string
                    SR:
                      type: string
                    SJ:
                      type: string
                    SZ:
                      type: string
                    SE:
                      type: string
                    CH:
                      type: string
                    SY:
                      type: string
                    TW:
                      type: string
                    TJ:
                      type: string
                    TZ:
                      type: string
                    TH:
                      type: string
                    TL:
                      type: string
                    TG:
                      type: string
                    TK:
                      type: string
                    TO:
                      type: string
                    TT:
                      type: string
                    TN:
                      type: string
                    TR:
                      type: string
                    TM:
                      type: string
                    TC:
                      type: string
                    TV:
                      type: string
                    UG:
                      type: string
                    UA:
                      type: string
                    AE:
                      type: string
                    GB:
                      type: string
                    US:
                      type: string
                    UM:
                      type: string
                    UY:
                      type: string
                    UZ:
                      type: string
                    VU:
                      type: string
                    VE:
                      type: string
                    VN:
                      type: string
                    VG:
                      type: string
                    VI:
                      type: string
                    WF:
                      type: string
                    EH:
                      type: string
                    YE:
                      type: string
                    ZM:
                      type: string
                    ZW:
                      type: string
                    AX:
                      type: string
                    BQ:
                      type: string
                    CW:
                      type: string
                    GG:
                      type: string
                    IM:
                      type: string
                    JE:
                      type: string
                    ME:
                      type: string
                    BL:
                      type: string
                    MF:
                      type: string
                    RS:
                      type: string
                    SX:
                      type: string
                    SS:
                      type: string
                    XK:
                      type: string
                  additionalProperties: false
                  description: >-
                    Geographic segmentation information for the QR code in the
                    JSON format `{[COUNTRY]: https://example.com }`.
                rules:
                  type: array
                  nullable: true
                  items:
                    type: object
                    properties:
                      attribute:
                        type: string
                        enum:
                          - device
                          - country
                          - utm_source
                          - utm_medium
                          - utm_campaign
                          - referrer
                          - language
                      operator:
                        type: string
                        enum:
                          - equals
                          - not_equals
                      value:
                        type: string
                        minLength: 1
                        maxLength: 190
                      url:
                        type: string
                    required:
                      - attribute
                      - operator
                      - value
                      - url
                  maxItems: 20
                  description: >-
                    Smart rules for conditional destination routing by request
                    attribute.
                doIndex:
                  type: boolean
                  default: false
                  description: >-
                    Allow search engines to index your QR code. The default is
                    `false` if not provided. Learn more:
                    https://codeqr.link/noindex
                webhookIds:
                  type: array
                  nullable: true
                  items:
                    type: string
                  description: >-
                    An array of webhook IDs to trigger when the link is clicked.
                    These webhooks will receive click event data.
                publicStats:
                  type: boolean
                  default: false
                  description: If the statistics of the QR code are publicly accessible.
                tagId:
                  type: string
                  nullable: true
                  description: >-
                    The unique ID of the tag assigned to the QR code. This field
                    is deprecated – use `tagIds` instead.
                  deprecated: true
                tagIds:
                  anyOf:
                    - type: string
                    - type: array
                      items:
                        type: string
                  description: The unique IDs of the tags assigned to the QR code.
                  example:
                    - clux0rgak00011...
                tagNames:
                  anyOf:
                    - type: string
                    - type: array
                      items:
                        type: string
                  description: >-
                    The unique name of the tags assigned to the QR code (case
                    insensitive).
                folderId:
                  type: string
                  nullable: true
                  description: >-
                    The unique ID of the folder assigned to the QR code. Omit or
                    set to null for no folder.
                comments:
                  type: string
                  nullable: true
                  description: The comments for the QR code.
                flexible:
                  type: boolean
                  default: false
                  description: If the QR code is flexible.
                filled:
                  type: boolean
                  default: false
                  description: If the QR code is filled.
                static:
                  type: boolean
                  default: false
                  description: If the QR code is static.
                useDisplayPage:
                  type: boolean
                  default: true
                  description: >-
                    For dynamic QR codes with phone, email, or sms types: if
                    true (default), shows an action page with buttons. If false,
                    redirects directly to tel:/mailto:/sms: URI.
                type:
                  type: string
                  enum:
                    - url
                    - text
                    - email
                    - wifi
                    - phone
                    - vcard
                    - crypto
                    - sms
                    - facetime
                    - geo
                    - latlog
                    - pix
                    - whatsapp
                  description: The type of content of the QR code.
                contentStatic:
                  type: string
                  nullable: true
                  description: The static content of the QR code.
                text:
                  type: string
                  nullable: true
                  description: The text of the QR code.
                email:
                  type: object
                  nullable: true
                  additionalProperties:
                    type: string
                  description: The email information of the QR code.
                wifi:
                  type: object
                  nullable: true
                  additionalProperties:
                    type: string
                  description: The WiFi information of the QR code.
                url:
                  type: string
                  nullable: true
                  description: The destination URL of the QR code.
                phone:
                  type: string
                  nullable: true
                  description: The phone number of the QR code.
                vcard:
                  type: object
                  nullable: true
                  additionalProperties:
                    type: string
                  description: The vCard information of the QR code.
                crypto:
                  type: object
                  nullable: true
                  additionalProperties:
                    type: string
                  description: The cryptocurrency information of the QR code.
                sms:
                  type: object
                  nullable: true
                  additionalProperties:
                    type: string
                  description: The SMS information of the QR code.
                whatsapp:
                  type: object
                  nullable: true
                  properties:
                    number:
                      type: string
                      pattern: ^[1-9]\d{7,14}$
                    message:
                      type: string
                      maxLength: 1000
                  required:
                    - number
                  description: >-
                    The WhatsApp click-to-chat info: E.164 number (digits only)
                    and optional prefilled message.
                facetime:
                  type: object
                  nullable: true
                  additionalProperties:
                    type: string
                  description: The FaceTime information of the QR code.
                latlog:
                  type: object
                  nullable: true
                  additionalProperties:
                    type: string
                  description: The latitude and longitude information of the QR code.
                logo:
                  type: string
                  nullable: true
                  description: The logo of the QR code.
                bgColor:
                  type: string
                  default: '#ffffff'
                  description: >-
                    The background color of the QR code (hex or CSS keyword).
                    Invalid values are coerced to default.
                fgColor:
                  type: string
                  default: '#000000'
                  description: >-
                    The foreground color of the QR code (hex or CSS keyword).
                    Invalid values are coerced to default.
                size:
                  type: number
                  default: 1024
                  description: The size of the QR code.
                level:
                  type: string
                  default: M
                  description: The level of error correction of the QR code.
                showLogo:
                  type: boolean
                  default: true
                  description: If the logo should be displayed in the QR code.
                src:
                  type: string
                  nullable: true
                  description: The image URL of the QR code.
                height:
                  type: number
                  description: >-
                    Logo height in pixels. When omitted, a proportional size is
                    used based on the QR code size (about 10–20% depending on
                    size).
                width:
                  type: number
                  description: >-
                    Logo width in pixels. When omitted, a proportional size is
                    used based on the QR code size (about 10–20% depending on
                    size).
                excavate:
                  type: boolean
                  default: true
                  description: If the QR code should have excavated areas.
                pattern:
                  type: string
                  default: default
                  description: The pattern of the modules of the QR code.
                shape:
                  type: string
                  default: none
                  description: >-
                    The shape of the design around the QR code (none, square,
                    circle).
                frame:
                  type: string
                  default: none
                  description: >-
                    The type of frame of the QR code (e.g. none, frame-1,
                    frame-2, frame-3, frame-5, frame-6). frame-5/6 are top-bar
                    variants. Unknown ids fall back to no frame at render.
                frameColor:
                  type: string
                  default: '#000000'
                  description: >-
                    The color of the frame (hex or CSS keyword). Invalid values
                    are coerced to default.
                frameText:
                  type: string
                  maxLength: 200
                  description: >-
                    Label text rendered inside the frame (e.g. "SCAN ME", a
                    product SKU). Maximum 200 characters. Word-wraps to multiple
                    lines at larger sizes; the frame bar grows vertically to
                    fit.
                  example: SKU-LH905461
                frameTextColor:
                  type: string
                  nullable: true
                  description: >-
                    Color of the frame label text (hex `#RRGGBB`, `#RGB`,
                    `#RRGGBBAA`, or a CSS keyword from the allowlist). When
                    omitted, a contrasting color is derived automatically from
                    `frameColor`.
                  example: '#ffffff'
                frameTextStyles:
                  type: object
                  nullable: true
                  properties:
                    weight:
                      type: string
                      enum:
                        - normal
                        - bold
                      description: >-
                        Font weight of the frame label text. `bold` renders at
                        SVG `font-weight="700"`, `normal` at `400`.
                      example: bold
                    style:
                      type: string
                      enum:
                        - normal
                        - italic
                      description: >-
                        Font style of the frame label text. `italic` applies
                        `font-style="italic"`.
                      example: normal
                    family:
                      type: string
                      enum:
                        - sans
                        - sans-condensed
                        - serif
                        - serif-elegant
                        - mono
                      description: >-
                        Font family used for the frame label text. `sans` =
                        Arial / Helvetica (default). `sans-condensed` = Arial
                        Narrow. `serif` = Georgia / Times New Roman.
                        `serif-elegant` = Palatino Linotype / Book Antiqua.
                        `mono` = Courier New. Values resolve to safe system font
                        stacks on the rendered SVG.
                      example: sans
                    size:
                      type: string
                      enum:
                        - s
                        - m
                        - l
                        - xl
                      description: >-
                        Font size preset for the frame label. `s` = 60 viewBox
                        units, `m` = 89.1 (default), `l` = 120, `xl` = 150.
                        Larger sizes grow the frame bar vertically to fit.
                        Extremely long text auto-shrinks to keep within 4 lines
                        (floor 48).
                      example: m
                  additionalProperties: false
                  description: >-
                    Typographic styles applied to the frame label text. Every
                    key is enum-gated — unknown keys or out-of-enum values are
                    rejected to prevent SVG attribute injection. All fields are
                    optional; omitted keys fall back to the default (normal
                    weight, normal style, sans family, medium size).
                  example:
                    weight: bold
                    size: xl
                    family: sans
                preRedirection:
                  type: boolean
                  default: false
                  description: If the QR code has pre-redirection.
                pageId:
                  type: string
                  nullable: true
                  description: >-
                    The ID of the page to redirect to before the QR code
                    destination.
                pageUrl:
                  type: string
                  nullable: true
                  description: >-
                    The URL of the page to redirect to before the QR code
                    destination.
                isFormMandatory:
                  type: boolean
                  default: false
                  description: If the form is mandatory for the page.
      responses:
        '200':
          description: The updated QR Code
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QrCodeSchema'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '409':
          $ref: '#/components/responses/409'
        '410':
          $ref: '#/components/responses/410'
        '422':
          $ref: '#/components/responses/422'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
      security:
        - token: []
      x-codeSamples:
        - lang: JavaScript
          source: |-
            import Codeqr from '@codeqr/ts';

            const client = new Codeqr({
              apiKey: process.env['CODEQR_API_KEY'], // This is the default and can be omitted
            });

            const qrCode = await client.qrcodes.update('qrcodeId');

            console.log(qrCode.id);
components:
  schemas:
    QrCodeSchema:
      type: object
      properties:
        id:
          type: string
          description: The unique ID of the QR code.
        domain:
          type: string
          description: >-
            The domain of the QR code. If not provided, the main domain of the
            project will be used (or `codeqr.link` if the project does not have
            domains).
        key:
          type: string
          description: >-
            The slug of the QR code. If not provided, a random slug of 7
            characters will be generated.
        archived:
          type: boolean
          default: false
          description: If the QR code is archived.
        expiresAt:
          type: string
          nullable: true
          description: >-
            The date and time the QR code will expire in ISO-8601 format. Must
            be in the future.
        expiredUrl:
          type: string
          nullable: true
          description: The destination URL when the QR code expires.
        password:
          type: string
          nullable: true
          description: The password required to access the destination URL of the QR code.
        externalId:
          type: string
          nullable: true
          description: The external ID associated with the QR code.
        trackConversion:
          type: boolean
          default: false
          description: '[BETA] If should track conversions for the QR code.'
        proxy:
          type: boolean
          default: false
          description: If the QR code uses the custom link preview feature.
        title:
          type: string
          nullable: true
          description: >-
            The title of the QR code generated via `api.codeqr.io/metatags`.
            Will be used for custom link preview if `proxy` is true.
        description:
          type: string
          nullable: true
          description: >-
            The description of the QR code generated via
            `api.codeqr.io/metatags`. Will be used for custom link preview if
            `proxy` is true.
        image:
          type: string
          nullable: true
          description: >-
            The image of the QR code generated via `api.codeqr.io/metatags`.
            Will be used for custom link preview if `proxy` is true.
        utm_source:
          type: string
          nullable: true
          description: The source UTM of the QR code.
        utm_medium:
          type: string
          nullable: true
          description: The medium UTM of the QR code.
        utm_campaign:
          type: string
          nullable: true
          description: The campaign UTM of the QR code.
        utm_term:
          type: string
          nullable: true
          description: The term UTM of the QR code.
        utm_content:
          type: string
          nullable: true
          description: The content UTM of the QR code.
        rewrite:
          type: boolean
          default: false
          description: If the QR code uses link cloaking.
        doIndex:
          type: boolean
          default: false
          description: If the QR code should be indexed.
        flexible:
          type: boolean
          default: false
          description: If the QR code is flexible.
        filled:
          type: boolean
          default: false
          description: If the QR code is filled.
        ios:
          type: string
          nullable: true
          description: >-
            The destination URL for iOS for the QR code for device targeting
            iOS.
        android:
          type: string
          nullable: true
          description: >-
            The destination URL for Android for the QR code for device targeting
            Android.
        geo:
          type: object
          nullable: true
          additionalProperties:
            type: string
          description: >-
            Geographic segmentation information for the QR code in the JSON
            format `{[COUNTRY]: https://example.com }`. Learn more:
            https://codeqr.link/geo
        rules:
          type: array
          nullable: true
          items:
            type: object
            properties:
              attribute:
                type: string
                enum:
                  - device
                  - country
                  - utm_source
                  - utm_medium
                  - utm_campaign
                  - referrer
                  - language
              operator:
                type: string
                enum:
                  - equals
                  - not_equals
              value:
                type: string
              url:
                type: string
            required:
              - attribute
              - operator
              - value
              - url
          description: >-
            Smart rules for conditional destination routing by request
            attribute.
        static:
          type: boolean
          default: false
          description: If the QR code is static.
        useDisplayPage:
          type: boolean
          default: true
          description: >-
            For dynamic QR codes with phone, email, or sms types: if true
            (default), shows an action page with buttons. If false, redirects
            directly to tel:/mailto:/sms: URI.
        type:
          type: string
          enum:
            - url
            - text
            - email
            - wifi
            - phone
            - vcard
            - crypto
            - sms
            - facetime
            - geo
            - latlog
            - pix
            - whatsapp
          description: The type of the QR code.
        contentStatic:
          type: string
          nullable: true
          description: The static content of the QR code.
        text:
          type: string
          nullable: true
          description: The text of the QR code.
        email:
          type: object
          nullable: true
          additionalProperties:
            type: string
          description: The email information of the QR code.
        wifi:
          type: object
          nullable: true
          additionalProperties:
            type: string
          description: The WiFi information of the QR code.
        url:
          type: string
          nullable: true
          description: The URL of the QR code.
        phone:
          type: string
          nullable: true
          description: The phone number of the QR code.
        vcard:
          type: object
          nullable: true
          additionalProperties:
            type: string
          description: The vCard information of the QR code.
        crypto:
          type: object
          nullable: true
          additionalProperties:
            type: string
          description: The cryptocurrency information of the QR code.
        sms:
          type: object
          nullable: true
          additionalProperties:
            type: string
          description: The SMS information of the QR code.
        whatsapp:
          type: object
          nullable: true
          properties:
            number:
              type: string
              pattern: ^[1-9]\d{7,14}$
            message:
              type: string
              maxLength: 1000
          required:
            - number
          description: >-
            The WhatsApp click-to-chat info: E.164 number (digits only) and
            optional prefilled message.
        facetime:
          type: object
          nullable: true
          additionalProperties:
            type: string
          description: The FaceTime information of the QR code.
        latlog:
          type: object
          nullable: true
          additionalProperties:
            type: string
          description: The latitude and longitude information of the QR code.
        logo:
          type: string
          nullable: true
          description: The logo of the QR code.
        bgColor:
          type: string
          description: The background color of the QR code.
        fgColor:
          type: string
          description: The foreground color of the QR code.
        size:
          type: number
          description: The size of the QR code.
        level:
          type: string
          description: The level of error correction of the QR code.
        showLogo:
          type: boolean
          default: false
          description: If the logo should be displayed in the QR code.
        src:
          type: string
          nullable: true
          description: The source of the QR code.
        height:
          type: number
          description: The height of the QR code.
        width:
          type: number
          description: The width of the QR code.
        excavate:
          type: boolean
          default: false
          description: If the QR code should be excavated.
        userId:
          type: string
          nullable: true
          description: The ID of the user that created the QR code.
        projectId:
          type: string
          nullable: true
          description: The ID of the project of the QR code.
        publicStats:
          type: boolean
          default: false
          description: If the statistics of the QR code are publicly accessible.
        scans:
          type: number
          default: 0
          description: The number of scans of the QR code.
        lastClicked:
          type: string
          nullable: true
          description: The date and time the QR code was scanned last.
        leads:
          type: number
          default: 0
          description: The number of leads generated by the QR code.
        sales:
          type: number
          default: 0
          description: The number of sales generated by the QR code.
        saleAmount:
          type: number
          default: 0
          description: The amount of the sale generated by the link.
        createdAt:
          type: string
          description: The date and time the QR code was created.
        updatedAt:
          type: string
          description: The date and time the QR code was updated last.
        tagId:
          type: string
          nullable: true
          description: >-
            [DEPRECATED (use `tags` instead)]: The unique ID of the tag assigned
            to the QR code.
          deprecated: true
        tags:
          type: array
          nullable: true
          items:
            $ref: '#/components/schemas/TagSchema'
          description: The tags assigned to the QR code.
        folderId:
          type: string
          nullable: true
          description: The unique ID of the folder assigned to the QR code.
        comments:
          type: string
          nullable: true
          description: The comments for the QR code.
        frameTextStyles:
          type: object
          nullable: true
          properties:
            weight:
              type: string
              enum:
                - normal
                - bold
            style:
              type: string
              enum:
                - normal
                - italic
            family:
              type: string
              enum:
                - sans
                - sans-condensed
                - serif
                - serif-elegant
                - mono
            size:
              type: string
              enum:
                - s
                - m
                - l
                - xl
          description: >-
            Typographic styles applied to the frame label text. Object with
            optional keys: `weight` (`normal` | `bold`), `style` (`normal` |
            `italic`), `family` (`sans` | `sans-condensed` | `serif` |
            `serif-elegant` | `mono`), `size` (`s` | `m` | `l` | `xl`). Every
            field is enum-gated on write; omitted keys render with defaults.
          example:
            weight: bold
            size: xl
            family: sans
        notificationToken:
          type: string
          nullable: true
          description: The notification token of the QR code.
        preRedirection:
          type: boolean
          default: false
          description: If the QR code has pre-redirection.
        pageId:
          type: string
          nullable: true
          description: The ID of the page to redirect to before the QR code destination.
        pageUrl:
          type: string
          nullable: true
          description: The URL of the page to redirect to before the QR code destination.
        isFormMandatory:
          type: boolean
          default: false
          description: If the form is mandatory for the page.
      required:
        - id
        - domain
        - key
        - archived
        - expiresAt
        - expiredUrl
        - password
        - externalId
        - trackConversion
        - proxy
        - title
        - description
        - image
        - utm_source
        - utm_medium
        - utm_campaign
        - utm_term
        - utm_content
        - rewrite
        - doIndex
        - flexible
        - filled
        - ios
        - android
        - geo
        - rules
        - static
        - useDisplayPage
        - type
        - contentStatic
        - text
        - email
        - wifi
        - url
        - phone
        - vcard
        - crypto
        - sms
        - whatsapp
        - facetime
        - latlog
        - logo
        - bgColor
        - fgColor
        - size
        - level
        - showLogo
        - src
        - height
        - width
        - excavate
        - userId
        - projectId
        - publicStats
        - scans
        - lastClicked
        - leads
        - sales
        - saleAmount
        - createdAt
        - updatedAt
        - tagId
        - tags
        - folderId
        - comments
        - notificationToken
        - preRedirection
        - isFormMandatory
      title: QRCode
    TagSchema:
      type: object
      properties:
        id:
          type: string
          description: The unique ID of the tag.
        name:
          type: string
          description: The name of the tag.
        color:
          type: string
          enum:
            - red
            - yellow
            - green
            - blue
            - purple
            - pink
            - brown
          description: The color of the tag.
      required:
        - id
        - name
        - color
      title: Tag
  responses:
    '400':
      description: >-
        The server cannot or will not process the request due to something that
        is perceived to be a client error (e.g., malformed request syntax,
        invalid request message framing, or deceptive request routing).
      content:
        application/json:
          schema:
            x-speakeasy-name-override: BadRequest
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - bad_request
                    description: A short code indicating the error code returned.
                    example: bad_request
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: https://docs.codeqr.io/api-reference/errors#bad-request
                required:
                  - code
                  - message
            required:
              - error
    '401':
      description: >-
        Although the HTTP standard specifies "unauthorized", semantically this
        response means "unauthenticated". That is, the client must authenticate
        itself to get the requested response.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: Unauthorized
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - unauthorized
                    description: A short code indicating the error code returned.
                    example: unauthorized
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: https://docs.codeqr.io/api-reference/errors#unauthorized
                required:
                  - code
                  - message
            required:
              - error
    '403':
      description: >-
        The client does not have access rights to the content; that is, it is
        unauthorized, so the server is refusing to give the requested resource.
        Unlike 401 Unauthorized, the client's identity is known to the server.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: Forbidden
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - forbidden
                    description: A short code indicating the error code returned.
                    example: forbidden
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: https://docs.codeqr.io/api-reference/errors#forbidden
                required:
                  - code
                  - message
            required:
              - error
    '404':
      description: The server cannot find the requested resource.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: NotFound
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - not_found
                    description: A short code indicating the error code returned.
                    example: not_found
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: https://docs.codeqr.io/api-reference/errors#not-found
                required:
                  - code
                  - message
            required:
              - error
    '409':
      description: >-
        This response is sent when a request conflicts with the current state of
        the server.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: Conflict
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - conflict
                    description: A short code indicating the error code returned.
                    example: conflict
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: https://docs.codeqr.io/api-reference/errors#conflict
                required:
                  - code
                  - message
            required:
              - error
    '410':
      description: >-
        This response is sent when the requested content has been permanently
        deleted from server, with no forwarding address.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: InviteExpired
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - invite_expired
                    description: A short code indicating the error code returned.
                    example: invite_expired
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: https://docs.codeqr.io/api-reference/errors#invite-expired
                required:
                  - code
                  - message
            required:
              - error
    '422':
      description: >-
        The request was well-formed but was unable to be followed due to
        semantic errors.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: UnprocessableEntity
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - unprocessable_entity
                    description: A short code indicating the error code returned.
                    example: unprocessable_entity
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: >-
                      https://docs.codeqr.io/api-reference/errors#unprocessable-entity
                required:
                  - code
                  - message
            required:
              - error
    '429':
      description: >-
        The user has sent too many requests in a given amount of time ("rate
        limiting")
      content:
        application/json:
          schema:
            x-speakeasy-name-override: RateLimitExceeded
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - rate_limit_exceeded
                    description: A short code indicating the error code returned.
                    example: rate_limit_exceeded
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: >-
                      https://docs.codeqr.io/api-reference/errors#rate-limit_exceeded
                required:
                  - code
                  - message
            required:
              - error
    '500':
      description: The server has encountered a situation it does not know how to handle.
      content:
        application/json:
          schema:
            x-speakeasy-name-override: InternalServerError
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: string
                    enum:
                      - internal_server_error
                    description: A short code indicating the error code returned.
                    example: internal_server_error
                  message:
                    x-speakeasy-error-message: true
                    type: string
                    description: A human readable explanation of what went wrong.
                    example: The requested resource was not found.
                  doc_url:
                    type: string
                    description: >-
                      A link to our documentation with more details about this
                      error code
                    example: >-
                      https://docs.codeqr.io/api-reference/errors#internal-server_error
                required:
                  - code
                  - message
            required:
              - error
  securitySchemes:
    token:
      type: http
      description: Default authentication mechanism
      scheme: bearer

````