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

5

Total users

0

Monthly active users

a month 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