QR Code Update API
Update the configuration and design of an existing QR code.
Modify the URL, text, or phone number, as well as colors, styles, logos, and other options. The QR code is updated in place without being recreated.
Use this API when you need to change settings without generating a new QR code.
/api/link/v1/update/qr
{
"linkId": "K56t",
"domain": "https://vvd.bz",
"type": "url",
"url": "https://www.instagram.com/vivoldiglobal",
"logoType": "U",
"logo": "https://example.com/images/picture/logo/20260425/500x500.png",
"foreground": "#0269D1FF"
}
Request Parameters
- linkId string required
-
Link ID.
If the URL is “https://vvd.im/myBrandQR”, the link ID is
myBrandQR. - domain string required
- Default:https://vvd.bz
- Link domain. If you use a custom domain, specify it here.
- type string
-
Enum:
urltextphoneemailsmswifi
-
QR code content type.
- url: Website URL
- text: Plain text
- phone: Phone number
- email: Email (recipient, subject, body)
- sms: SMS (recipient number, message)
- wifi: Wi-Fi access (network name, security, password)
If
typeis omitted, the current type is kept. Only when changingtypeto a different type must you also send the required field for the new type; for the same type, send only the fields you want to change. Fields you do not send keep their current values. The former field namesqrEml,qrEmlTtl,qrEmlBody,qrSmsPhnNo,qrSmsBody,qrWifiSsid,qrWifiEncrypt,qrWifiPwdare still accepted but deprecated. Please switch to the names above. Sending the same field under both names returns a 400 error. - url string
-
Destination URL for the QR code.
Required when
typeisurl. Must be a full http or https URL.
Maximum length:2,000 bytes.
In an update, this is required only when changing to that type; if the type stays the same, you can omit it (the current value is kept). - text string
-
Text content embedded in the QR code.
Used when
typeistext. The content is displayed as-is when scanned.
Suitable for messages, codes, or instructions. Display may vary by device.
Maximum length:65,535 bytes. - phone string
-
Phone number triggered by the QR code.
Used when
typeisphone. Opens the dialer on scan.
Maximum length:32 characters. Include country code for best compatibility.
Whentypeissms, this is the recipient number for the text message and is required. Hyphens (-) are removed when saved.
In an update, this is required only when changing to that type; if the type stays the same, you can omit it (the current value is kept). - email string
-
Recipient address of the email composed on scan.
Required whentypeisemail. Maximum length:128 characters.
In an update, this is required only when changing to that type; if the type stays the same, you can omit it (the current value is kept). - emailSubject string
-
Email subject. Used when
typeisemail. Maximum length:256 characters. In an update, sending an empty string clears the value. - emailBody string
-
Email body. Used when
typeisemail. Maximum length:65,535 bytes. In an update, sending an empty string clears the value. - message string
-
Text message content. Used when
typeissms; send the recipient number inphone.
Maximum length:128 characters. In an update, sending an empty string clears the value. - wifiSsid string
-
Wi-Fi network name (SSID). Required when
typeiswifi. Maximum length:64 characters.
In an update, this is required only when changing to that type; if the type stays the same, you can omit it (the current value is kept). - wifiEncryption string
-
Enum:
WPAWEPnopass
-
Wi-Fi security type. Used when
typeiswifi.- WPA: WPA/WPA2/WPA3
- WEP: WEP
- nopass: No password
wifi, it defaults toWPAif omitted; if the type is alreadywifi, the current value is kept. - wifiPassword string
-
Wi-Fi password. Used when
typeiswifi; leading and trailing spaces are removed when saved.
Maximum length:32 characters. Leave empty when the security type isnopass. In an update, sending an empty string clears the value. - logoType string
- Default:N
-
Enum:
NCU
-
Logo type placed at the center of the QR code.
- N: No logo
- C: Use default logo from [Settings → Organization]
- U: Use custom uploaded logo
Adding a logo enhances brand recognition.
This feature is available on Personal plans and above. - logo string
-
Logo image URL placed at the center of the QR code.
Used when
logoTypeisU. Must be publicly accessible.
Square images are recommended. Transparent PNG works best.
Max size: 500x500 pixels.
Example: https://example.com/images/picture/logo/500x500.png - foreground string
-
Foreground color of the QR code.
Use HEX format (#000000). Default is black.
Maintain strong contrast with the background for reliable scanning. Default: #000000FF - background string
-
Background color of the QR code.
Use HEX format. Default is white.
Dark backgrounds may reduce scan reliability. Default: #FFFFFFFF - markerColor string
-
Color of position markers (corners).
Can be customized separately for visual emphasis.
Default: #000000FF - markerBorderColor string
-
Border color of the QR markers.
Customize alongside marker color. Low contrast may affect scanning.
Default: #000000FF - style string
- Default:snakes
-
Enum:
rectanglessmall-rectanglesdotsround rowscolumnssnakeswater
- Overall QR pattern style. Each style changes the visual structure. See the dashboard preview for details.
- markerStyle string
- Default:round
-
Enum:
rectanglesroundcirclesdrop-in drop-outround-inround-outedge-in edge-out
-
Style of position markers.
Supports various shapes beyond the default square. Combine with style for custom designs.
See dashboard preview for details. - grpIdx integer
-
Group identifier for organizing QR codes.
Helps manage links by category.
Get group IDX via Group List API or dashboard. - ttl string
- Link title for internal use.
- memo string
- Internal memo for managing links. Not visible to end users.
- qrBypassYn string
- Default:N
-
Enum:
YN
-
Controls whether scans bypass the short link.
Y: Direct access (no tracking)
N: Via short link (tracking enabled)
UseNfor analytics and access control. - pushNotifyYn string
- Default:N
-
Enum:
YN
-
Send push notifications on scan.
IfY, alerts are sent when the configured threshold is reached.
Useful for real-time tracking.
Available on Personal plans and above. - mailNotifyYn string
- Default:N
-
Enum:
YN
-
Send email notifications on scan.
IfY, emails are sent when thresholds are reached.
Enables instant admin alerts.
Available on Personal plans and above. - delYmdt datetime
-
Scheduled deletion timestamp.
The link is automatically removed after this time.
Example: 2025-08-30 23:59:59
{
"code": 0,
"message": "",
"result": null
}
Response Parameters
- code integer
- Response code: 0 = Success, other values = Error
- message string
- Response message. If the response code is not 0, an error message is returned.
- result null
When to Use This API
Use the QR Code Update API in the following scenarios:
- When you need to change the destination URL of a QR code that has already been distributed
- When you want to update the design, including colors, logos, or styles
- When you need to modify content or settings without deleting the QR code
- When you need to update QR code designs at scale, such as during a brand refresh
so you can update the content without replacing codes already printed or used in offline materials.
Use Cases
The QR Code Update API fits a range of practical scenarios:
- Print materials & banners: Update only the destination URL of distributed QR codes to avoid reprinting costs
- Brand refresh: Apply new brand colors by updating QR designs in bulk
- Event operations: Switch destination pages by season without changing the QR code
- Stores & tables: Point existing QR codes to new menu pages when menus change
Ideal when you need to reuse QR codes that are already in circulation.
Things to consider
Keep the following in mind when updating a QR code:
-
Update
foreground(foreground color) andbackground(background color) together.
Changing only the background can reduce scan reliability due to low contrast. -
Use a light
background, such as #FFFFFF (white).
Dark backgrounds can make the QR pattern hard to detect. - When changing
type, provide the corresponding data parameter for that type. - Changing the group with
grpIdxmoves the QR code to the new group and removes it from the previous one.