QR Code API (bulk, image/logo support) avatar
QR Code API (bulk, image/logo support)

Pricing

$4.99 / 1,000 results

Go to Apify Store
QR Code API (bulk, image/logo support)

QR Code API (bulk, image/logo support)

$0.004 API to generate QR codes with various customization options including colors and custom logo / image.

Pricing

$4.99 / 1,000 results

Rating

5.0

(1)

Developer

Practical Tools

Practical Tools

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

25 days ago

Last modified

Share

QR Code Generator Actor

An Apify Actor that generates customizable QR codes with support for bulk generation, custom styling, and logo overlays.

Features

  • ✅ Generate QR codes for URLs, text, WiFi credentials, or any string content
  • Bulk generation - Generate multiple QR codes in a single run
  • Custom colors - Customize dark and light module colors
  • Multiple formats - Output as PNG (base64 data URL) or SVG
  • Logo overlay - Add your brand logo to the center of QR codes
  • Error correction - Automatic high error correction when using logos
  • Flexible sizing - Customize QR code and logo dimensions

Input

The Actor accepts the following input parameters:

ParameterTypeRequiredDescriptionDefault
contentarrayList of strings to encode as QR codes (URLs, text, etc.)["https://example.com"]
formatstringOutput format: png or svgpng
sizeintegerWidth and height of the QR code in pixels (50-2000)300
colorDarkstringColor of dark modules (hex format)#000000
colorLightstringColor of light modules (hex format)#ffffff
errorCorrectionLevelstringError correction level: L (7%), M (15%), Q (25%), or H (30%)M (auto H with logo)
logoUrlstringURL of a logo image to overlay on the QR code-
logoWidthintegerLogo width in pixels (defaults to 15% of QR code size)-
logoHeightintegerLogo height in pixels (defaults to 15% of QR code size)-

Input Example

{
"content": [
"https://example.com",
"https://apify.com",
"mailto:hello@example.com"
],
"format": "png",
"size": 400,
"colorDark": "#1a237e",
"colorLight": "#e8eaf6",
"errorCorrectionLevel": "H",
"logoUrl": "https://example.com/logo.png",
"logoWidth": 60,
"logoHeight": 60
}

Output

The Actor saves results to the default dataset. Each item in the output contains:

FieldTypeDescription
originalContentstringThe original input content that was encoded
qrCodeDataUrlstringBase64-encoded PNG data URL (when format is png)
qrCodeSvgstringSVG markup string (when format is svg)

Output Example

[
{
"originalContent": "https://example.com",
"qrCodeDataUrl": "data:image/png;base64,iVBORw0KGgoAAAANS..."
},
{
"originalContent": "https://apify.com",
"qrCodeDataUrl": "data:image/png;base64,iVBORw0KGgoAAAANS..."
}
]

Usage Tips

Logo Overlay

When using a logo overlay:

  • The error correction level is automatically set to H (High - 30%) for better scannability
  • Logos are automatically sized to 15% of the QR code dimensions (customizable via logoWidth/logoHeight)
  • A white background is added around the logo for better contrast
  • Supported logo formats: PNG, JPG, SVG

Error Correction Levels

  • L (Low) - ~7% error resistance - Best for clean, controlled environments
  • M (Medium) - ~15% error resistance - Good general-purpose level
  • Q (Quartile) - ~25% error resistance - Better for outdoor use
  • H (High) - ~30% error resistance - Required for logos, best for damaged/dirty conditions

Bulk Generation

To generate multiple QR codes in one run, simply add multiple strings to the content array:

{
"content": [
"https://example.com/product1",
"https://example.com/product2",
"https://example.com/product3"
]
}

Each QR code will be saved as a separate item in the dataset with its originalContent for easy identification.

This reads input from storage/key_value_stores/default/INPUT.json and saves output to storage/datasets/default/.

Resources