curl -X POST "https://api.scanova.io/qr/multi/" \
-H "Authorization: 401f7ac837da42b97f613d789819ff93537bee6a" \
-H "Content-Type: application/json" \
-d '{
"qrid": "Qa1b2c3d4e5f6g7h8",
"name": "Summer Sale Landing",
"number_of_copies": 3,
"domain": true,
"password": false,
"lead_list": false,
"form": false,
"high_accuracy_mode": false,
"pattern_info": true,
"tags": true,
"is_copy": true,
"is_page": false,
"has_qr": true
}'
[
{
"id": 1042,
"qrid": "Qa1b2c3d4e5f6g7h8",
"name": "Summer Sale Landing",
"qr_type": "dy",
"qr_type_display": "Dynamic",
"category": {
"id": 3,
"name": "Website URL",
"slug": "url",
"allowed_qr_types": "dy",
"has_landing_page": false
},
"info": "{\"type\":\"url\",\"data\":{\"url\":\"https://example.com/summer-sale\"}}",
"pattern_info": null,
"svg_code": null,
"dynamic_url_object": {
"id": 501,
"url_hash": "a1b2c3d4",
"custom_domain": null,
"complete_url": "https://scnv.io/a1b2c3d4",
"qr_url": "https://scnv.io/a1b2c3d4",
"is_active": true,
"is_expired": false,
"visit_count": 0,
"web_tracking_site_id": null
},
"thumbnail": null,
"is_active": true,
"folder": null,
"version": 2,
"tags_list": [
"campaign-2026",
"print"
],
"is_password_protected": false,
"is_age_restricted": false,
"is_designer": false,
"high_accuracy_mode": false,
"activate_on": null,
"expire_on": null,
"expire_on_scan_count": null,
"minimum_age": null,
"is_page": false,
"has_qr": true,
"is_draft": false,
"draft_info": null,
"draft_saved_at": null,
"published_at": "2026-09-01T10:04:11Z",
"is_currently_draft": false,
"created": "2026-09-01T10:04:11Z",
"modified": "2026-09-01T10:04:11Z"
}
]QR Codes
Copy a QR Code
POST /qr/multi/
POST
/
qr
/
multi
/
curl -X POST "https://api.scanova.io/qr/multi/" \
-H "Authorization: 401f7ac837da42b97f613d789819ff93537bee6a" \
-H "Content-Type: application/json" \
-d '{
"qrid": "Qa1b2c3d4e5f6g7h8",
"name": "Summer Sale Landing",
"number_of_copies": 3,
"domain": true,
"password": false,
"lead_list": false,
"form": false,
"high_accuracy_mode": false,
"pattern_info": true,
"tags": true,
"is_copy": true,
"is_page": false,
"has_qr": true
}'
[
{
"id": 1042,
"qrid": "Qa1b2c3d4e5f6g7h8",
"name": "Summer Sale Landing",
"qr_type": "dy",
"qr_type_display": "Dynamic",
"category": {
"id": 3,
"name": "Website URL",
"slug": "url",
"allowed_qr_types": "dy",
"has_landing_page": false
},
"info": "{\"type\":\"url\",\"data\":{\"url\":\"https://example.com/summer-sale\"}}",
"pattern_info": null,
"svg_code": null,
"dynamic_url_object": {
"id": 501,
"url_hash": "a1b2c3d4",
"custom_domain": null,
"complete_url": "https://scnv.io/a1b2c3d4",
"qr_url": "https://scnv.io/a1b2c3d4",
"is_active": true,
"is_expired": false,
"visit_count": 0,
"web_tracking_site_id": null
},
"thumbnail": null,
"is_active": true,
"folder": null,
"version": 2,
"tags_list": [
"campaign-2026",
"print"
],
"is_password_protected": false,
"is_age_restricted": false,
"is_designer": false,
"high_accuracy_mode": false,
"activate_on": null,
"expire_on": null,
"expire_on_scan_count": null,
"minimum_age": null,
"is_page": false,
"has_qr": true,
"is_draft": false,
"draft_info": null,
"draft_saved_at": null,
"published_at": "2026-09-01T10:04:11Z",
"is_currently_draft": false,
"created": "2026-09-01T10:04:11Z",
"modified": "2026-09-01T10:04:11Z"
}
]Creates up to ten copies of an existing QR Code.
The remaining fields —
Returns
POST https://api.scanova.io/qr/multi/
Authorization: 401f7ac837da42b97f613d789819ff93537bee6a
string
required
The source QR Code to copy.
string
Base name for the copies, max 250 characters.
integer
required
How many copies to create, from
1 to 10.integer
Optional custom domain for the copies’ short URLs.
domain, password, lead_list, form, high_accuracy_mode, pattern_info, tags, is_copy, is_page, has_qr — are booleans that mean “copy this aspect from the source?”, not values:
boolean
Copy the source’s custom domain.
boolean
Copy the source’s password protection.
boolean
Copy the attached lead list.
boolean
Copy the attached form.
boolean
Copy the design.
boolean
Copy the tags.
curl -X POST "https://api.scanova.io/qr/multi/" \
-H "Authorization: 401f7ac837da42b97f613d789819ff93537bee6a" \
-H "Content-Type: application/json" \
-d '{
"qrid": "Qa1b2c3d4e5f6g7h8",
"name": "Summer Sale Landing",
"number_of_copies": 3,
"domain": true,
"password": false,
"lead_list": false,
"form": false,
"high_accuracy_mode": false,
"pattern_info": true,
"tags": true,
"is_copy": true,
"is_page": false,
"has_qr": true
}'
201 with the created QR Codes as a list, each in the full detail shape. Every copy consumes QR-count quota exactly as a fresh create would.
This path also answers to
PUT for an unrelated operation — see Bulk-update QR Code fields. Same path, different verb, different contract.Related
- Bulk-update QR Code fields — the
PUToperation on this same path. - Create a QR Code — create a fresh QR Code instead of a copy.
- List QR Codes — find the source
qrid. - QR Manager overview — the quotas, role permissions, and Trash model shared by every endpoint in this module.
- Management API overview — the auth scheme and quota rules that apply to this endpoint.
Authorizations
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. api.scanova.io) — the same key sent to the regular API host will not authenticate.
Response
The created copies.
Was this page helpful?