QR Code API

Utility API · Works globally · goQR.me · No API key

TL;DR

The goQR QR Code API generates QR code images on the fly from any text or URL data. You control the size, format (PNG, SVG, EPS), and error correction level through simple URL parameters. The API returns the QR code image directly — perfect for embedding in web pages, generating dynamic codes for events, or creating QR-based business cards. No API key or rate limits documented.

Quick start: http://api.qrserver.com/v1/create-qr-code/?data=https://example.com&size=100x100

No API key needed — just make a request!

How to Use This API

1. Basic QR Code

Generate a QR code pointing to a URL:

http://api.qrserver.com/v1/create-qr-code/?data=https://example.com&size=100x100

2. QR Code with Custom Size and Margin

http://api.qrserver.com/v1/create-qr-code/?data=Hello+World&size=300x300&margin=20

3. JavaScript — Generate Dynamic QR

const qrUrl = new URL('http://api.qrserver.com/v1/create-qr-code/');
qrUrl.searchParams.set('data', 'https://myapp.com/login');
qrUrl.searchParams.set('size', '200x200');
qrUrl.searchParams.set('margin', '10');

const img = document.createElement('img');
img.src = qrUrl.toString();
img.alt = 'QR Code for login';
document.body.appendChild(img);

4. Python — Save QR to File

import requests

params = {
    'data': 'https://free-api-explorer.pages.dev',
    'size': '400x400',
    'margin': '15'
}
resp = requests.get(
    'http://api.qrserver.com/v1/create-qr-code/',
    params=params
)
with open('qr_code.png', 'wb') as f:
    f.write(resp.content)
print(f"QR code saved ({len(resp.content)} bytes)")
Generate a QR for example.com: http://api.qrserver.com/v1/create-qr-code/?data=https://example.com&size=100x100

Frequently Asked Questions

What image formats are supported?
PNG is the default. You can also get SVG and EPS by changing the format parameter to svg or eps.
What size should I use?
Use the format widthxheight (e.g., 300x300). The minimum is 100x100 and there is no documented upper limit, though very large sizes may be slow.
Can I set the error correction level?
Yes, use the ecc parameter. Values are L (low, ~7% recovery), M (medium, ~15%), Q (quartile, ~25%), and H (high, ~30%). Default is M.
Is there a limit on data length?
QR codes have a maximum data capacity depending on version and error correction. For a typical 300x300 code, you can fit roughly 4000 alphanumeric characters or 7000 numeric digits.
Is the API free?
Yes, completely free. No API key, no registration, no rate limits documented. Attribution is appreciated but not required.
Can I also decode QR codes?
Yes. goQR offers a read endpoint at http://api.qrserver.com/v1/read-qr-code/ where you can upload or URL-reference a QR image for decoding.

API Details

API URL
http://api.qrserver.com/v1/create-qr-code/
Documentation
goqr.me/api
Category
Utility
Authentication
Not Required
Geographic Coverage
Global

What You Can Build