Skip to main content

Bulk Create QR Codes

Create multiple QR codes in a single request. Up to 100 QR codes can be created at once.

POST/qr-codes/bulk

Headers

HeaderRequiredDescription
X-API-KeyRequiredYour API key
Content-TypeRequiredapplication/json
QR-VersionOptionalAPI version (e.g., 2026-02-16)

Body Parameters

ParameterTypeRequiredDescription
entriesarrayRequiredArray of QR codes to create (1–100 items)
entries[].namestringOptionalName for the QR code (max 100 chars)
entries[].typestringRequiredQR code type (url, vCard, wifi, etc.)
entries[].contentobjectRequiredContent data — varies by type. See QR Types.
entries[].folder_idstringOptionalFolder ID for this QR code. Omit for root. Invalid IDs are ignored (QR created in root). Requires Folders feature.
designobjectOptionalShared design applied to all entries. See Design or try the Builder. Cannot be used with template_id.
template_idstringOptionalTemplate ID to use for all QR codes. See Templates. Cannot be used with design.
tip

The response includes a summary with total, successful, and failed counts. Individual entries that fail won't prevent other entries from being created. You can use either template_id to apply a consistent design from a saved template to all QR codes, or provide design for custom styling, but not both.

Request

curl -X POST "https://integration-api.qr-build.com/qr-codes/bulk" \
-H "X-API-Key: qrb_live_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"entries": [
{
"name": "Website QR",
"type": "url",
"content": { "type": "url", "url": "https://example.com" }
},
{
"name": "Contact QR",
"type": "vCard",
"content": {
"type": "vCard",
"first_name": "John",
"last_name": "Doe",
"email": "john@example.com"
}
}
],
"design": {
"dots": { "style": "rounded", "color": "#000000" }
}
}'

Using a Template:

curl -X POST "https://integration-api.qr-build.com/qr-codes/bulk" \
-H "X-API-Key: qrb_live_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"entries": [
{
"name": "Website QR",
"type": "url",
"content": { "type": "url", "url": "https://example.com" }
},
{
"name": "Contact QR",
"type": "vCard",
"content": {
"type": "vCard",
"first_name": "John",
"last_name": "Doe",
"email": "john@example.com"
}
}
],
"template_id": "tmpl-aBc123XyZ9"
}'

Response

{
"object": "bulk",
"success": true,
"data": {
"summary": {
"total": 2,
"successful": 2,
"failed": 0
},
"created": [
{ "index": 0, "id": "qr-aBc123XyZ9", "name": "Website QR" },
{ "index": 1, "id": "qr-dEf456UvW2", "name": "Contact QR" }
],
"errors": []
}
}

Response — Partial Failure

{
"object": "bulk",
"success": true,
"data": {
"summary": {
"total": 3,
"successful": 2,
"failed": 1
},
"created": [
{ "index": 0, "id": "qr-aBc123XyZ9", "name": "Website QR" },
{ "index": 2, "id": "qr-dEf456UvW2", "name": "Contact QR" }
],
"errors": [
{ "index": 1, "name": "Invalid QR", "error": "Category not found" }
]
}
}

Error — Both design and template_id provided

{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "You can use either 'design' or 'template_id', but not both"
}
}