Bulk QR Generator
Generate up to 20 styled QR codes in a single request
/v1/qr/bulk
curl -X POST "https://barcode.toolkitapi.io/v1/qr/bulk" \
-H "Content-Type: application/json" \
-d '{
"format": "png",
"items": [
{"data": "https://toolkitapi.io/product/1", "module_shape": "rounded", "fg_color": "#1a1a2e"},
{"data": "https://toolkitapi.io/product/2", "module_shape": "rounded", "fg_color": "#1a1a2e"},
{"data": "https://toolkitapi.io/product/3", "size": 600}
]
}'
import httpx
resp = httpx.post(
"https://barcode.toolkitapi.io/v1/qr/bulk",
json={
"format": "png",
"items": [
{"data": "https://toolkitapi.io/product/1", "module_shape": "rounded", "fg_color": "#1a1a2e"},
{"data": "https://toolkitapi.io/product/2", "module_shape": "rounded", "fg_color": "#1a1a2e"},
{"data": "https://toolkitapi.io/product/3", "size": 600}
]
},
)
print(resp.json())
const resp = await fetch("https://barcode.toolkitapi.io/v1/qr/bulk", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
"format": "png",
"items": [
{"data": "https://toolkitapi.io/product/1", "module_shape": "rounded", "fg_color": "#1a1a2e"},
{"data": "https://toolkitapi.io/product/2", "module_shape": "rounded", "fg_color": "#1a1a2e"},
{"data": "https://toolkitapi.io/product/3", "size": 600}
]
}),
});
const data = await resp.json();
console.log(data);
# See curl example
{
"total": 3,
"format": "png",
"results": [
{
"data": "https://toolkitapi.io/product/1",
"image": "iVBORw0KGgoAAAANSUhEUgAA...base64...",
"size": 400,
"error_correction": "M",
"module_shape": "rounded"
},
{
"data": "https://toolkitapi.io/product/2",
"image": "iVBORw0KGgoAAAANSUhEUgAA...base64...",
"size": 400,
"error_correction": "M",
"module_shape": "rounded"
},
{
"data": "https://toolkitapi.io/product/3",
"image": "iVBORw0KGgoAAAANSUhEUgAA...base64...",
"size": 600,
"error_correction": "M",
"module_shape": "square"
}
]
}
Try It Live
Description
How to Use
1. Send a POST request with an `items` array containing 1–20 QR code specifications. Each item requires a `data` field; all other fields are optional with sensible defaults.
2. Optionally set `format` at the top level (currently only `png` is supported for bulk generation).
3. Each item supports `size`, `error_correction`, `fg_color`, `bg_color`, and `module_shape` — the same styling options as the single QR generate endpoint, minus logo embedding.
4. The response contains a `results` array with each generated QR code in order, plus a `total` count.
About This Tool
Use the Bulk QR Generator to create up to 20 QR codes in a single API call. Each item in the batch can have its own data, size, colours, module shape, and error correction level — giving you full per-code customisation without the overhead of multiple requests.
The endpoint returns PNG images only. All generated codes are returned as base64-encoded strings in the response array, in the same order as the input.
Why Use This Tool
- Product catalogues — Generate unique QR codes for every item in a product line in one call
- Event management — Batch-create attendee-specific QR codes for tickets or badges
- Asset tagging — Produce QR labels for equipment, inventory, or office assets in bulk
- Marketing campaigns — Create trackable QR codes with unique URLs for A/B testing or per-channel attribution
- Retail shelf labels — Generate a set of QR codes linking to product pages, nutrition info, or reviews
- Print runs — Pre-generate all QR codes needed for a print job in a single request to minimise API round-trips
Frequently Asked Questions
Why is only PNG supported for bulk generation?
What happens if one item in the batch fails?
Can I mix different styles in a single batch?
Is there a size limit on the request?
Start using Bulk QR Generator now
Get your free API key and make your first request in under a minute.